How can I draw a rectangle around venn Diagrams?How can I invert a 'clip' selection within TikZ?Shade part of...

In a series of books, what happens after the coming of age?

How to make a kid's bike easier to pedal

Picking a theme as a discovery writer

Good introductory book to type theory?

What is the meaning of "matter" in physics?

My large rocket is still flipping over

If quadruped mammals evolve to become bipedal will their breast or nipple change position?

Can anyone identify this unknown 1988 PC card from The Palantir Corporation?

Translation of "invincible independence"

What does “two-bit (jerk)” mean?

What detail can Hubble see on Mars?

Why doesn't a particle exert force on itself?

Convert Numbers To Emoji Math

How is it believable that Euron could so easily pull off this ambush?

How to get the decimal part of a number in apex

All of my Firefox add-ons have been disabled suddenly, how can I re-enable them?

What happens when the drag force exceeds the weight of an object falling into earth?

An adjective or a noun to describe a very small apartment / house etc

Why was Gemini VIII terminated after recovering from the OAMS thruster failure?

How do I give a darkroom course without negs from the attendees?

Appropriate age to involve kids in life changing decisions

What’s the interaction between darkvision and the Eagle Aspect of the beast, if you have Darkvision past 100 feet?

What does the copyright in a dissertation protect exactly?

Saying the right thing then saying the wrong thing toch kedai dibur



How can I draw a rectangle around venn Diagrams?


How can I invert a 'clip' selection within TikZ?Shade part of a Venn diagramHow can I draw the outline of a path in tikz?venn diagrams using tikzNumerical conditional within tikz keys?How do I draw a box around a venn diagramTikZ: Drawing an arc from an intersection to an intersectionLine up nested tikz enviroments or how to get rid of themProblems with nested TikZpicturesDraw a rectangle to given Venn DiagramSet of Venn DiagramsDrawing Venn Diagrams













3















I have tried some of the solutions to similar questions, but none of them included minipages, which seems to be the problem (I`m fairly new to LaTeX)



So, here's the coding:



% Definition of circles
deffirstcircle{(0,0) circle (1.5cm)}
defsecondcircle{(0:2cm) circle (1.5cm)}

colorlet{circle edge}{black!50}
colorlet{circle area}{grey!20}

tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
outline/.style={draw=circle edge, thick}}

setlength{parskip}{5mm}

% Set A or B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
draw[filled] firstcircle node {$A$}
secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
end{minipage}
end{tikzpicture}
% Set A and B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
begin{scope}
clip firstcircle;
fill[filled] secondcircle;
end{scope}
draw[outline] firstcircle node {$A$};
draw[outline] secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
node[anchor=west] at (current bounding box.east) {$A cap B$}
end{minipage}
end{tikzpicture}


What it looks like



Also, if you know how to put the "B" in the center of the circle on the right I`d appreciate your help! Thank you.










share|improve this question







New contributor



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




















  • Welcome to TeX.SE!

    – Kurt
    1 hour ago











  • You should not use minipage inside TikZ pictures

    – JouleV
    1 hour ago
















3















I have tried some of the solutions to similar questions, but none of them included minipages, which seems to be the problem (I`m fairly new to LaTeX)



So, here's the coding:



% Definition of circles
deffirstcircle{(0,0) circle (1.5cm)}
defsecondcircle{(0:2cm) circle (1.5cm)}

colorlet{circle edge}{black!50}
colorlet{circle area}{grey!20}

tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
outline/.style={draw=circle edge, thick}}

setlength{parskip}{5mm}

% Set A or B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
draw[filled] firstcircle node {$A$}
secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
end{minipage}
end{tikzpicture}
% Set A and B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
begin{scope}
clip firstcircle;
fill[filled] secondcircle;
end{scope}
draw[outline] firstcircle node {$A$};
draw[outline] secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
node[anchor=west] at (current bounding box.east) {$A cap B$}
end{minipage}
end{tikzpicture}


What it looks like



Also, if you know how to put the "B" in the center of the circle on the right I`d appreciate your help! Thank you.










share|improve this question







New contributor



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




















  • Welcome to TeX.SE!

    – Kurt
    1 hour ago











  • You should not use minipage inside TikZ pictures

    – JouleV
    1 hour ago














3












3








3








I have tried some of the solutions to similar questions, but none of them included minipages, which seems to be the problem (I`m fairly new to LaTeX)



So, here's the coding:



% Definition of circles
deffirstcircle{(0,0) circle (1.5cm)}
defsecondcircle{(0:2cm) circle (1.5cm)}

colorlet{circle edge}{black!50}
colorlet{circle area}{grey!20}

tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
outline/.style={draw=circle edge, thick}}

setlength{parskip}{5mm}

% Set A or B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
draw[filled] firstcircle node {$A$}
secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
end{minipage}
end{tikzpicture}
% Set A and B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
begin{scope}
clip firstcircle;
fill[filled] secondcircle;
end{scope}
draw[outline] firstcircle node {$A$};
draw[outline] secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
node[anchor=west] at (current bounding box.east) {$A cap B$}
end{minipage}
end{tikzpicture}


What it looks like



Also, if you know how to put the "B" in the center of the circle on the right I`d appreciate your help! Thank you.










share|improve this question







New contributor



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











I have tried some of the solutions to similar questions, but none of them included minipages, which seems to be the problem (I`m fairly new to LaTeX)



So, here's the coding:



% Definition of circles
deffirstcircle{(0,0) circle (1.5cm)}
defsecondcircle{(0:2cm) circle (1.5cm)}

colorlet{circle edge}{black!50}
colorlet{circle area}{grey!20}

tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
outline/.style={draw=circle edge, thick}}

setlength{parskip}{5mm}

% Set A or B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
draw[filled] firstcircle node {$A$}
secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
end{minipage}
end{tikzpicture}
% Set A and B
begin{tikzpicture}
begin{minipage}[t][2cm][t]{.48textwidth}
begin{scope}
clip firstcircle;
fill[filled] secondcircle;
end{scope}
draw[outline] firstcircle node {$A$};
draw[outline] secondcircle node {$B$};
node[anchor=south] at (current bounding box.north) {$M$};
node[anchor=west] at (current bounding box.east) {$A cap B$}
end{minipage}
end{tikzpicture}


What it looks like



Also, if you know how to put the "B" in the center of the circle on the right I`d appreciate your help! Thank you.







tikz-pgf bounding-box venn-diagrams






share|improve this question







New contributor



Matheus Chebli 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



Matheus Chebli 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






New contributor



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








asked 1 hour ago









Matheus ChebliMatheus Chebli

161




161




New contributor



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




New contributor




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















  • Welcome to TeX.SE!

    – Kurt
    1 hour ago











  • You should not use minipage inside TikZ pictures

    – JouleV
    1 hour ago



















  • Welcome to TeX.SE!

    – Kurt
    1 hour ago











  • You should not use minipage inside TikZ pictures

    – JouleV
    1 hour ago

















Welcome to TeX.SE!

– Kurt
1 hour ago





Welcome to TeX.SE!

– Kurt
1 hour ago













You should not use minipage inside TikZ pictures

– JouleV
1 hour ago





You should not use minipage inside TikZ pictures

– JouleV
1 hour ago










3 Answers
3






active

oldest

votes


















2














Welcome to TeX.SE! It is good that you included your code. In terms of drawing a rectangle around the venn diagram, you could import the fit library from Tikz using usetikzlibrary{fit}. I have completed an example to illustrate. Also, I have changed the code a little bit. You now have one tikzpicture (with no minipage). The first venn diagram has its own scope and the second has its own as well. I have changed the placement of M so that it would be easier to read. There are two types overall in terms of appearance, you choose the one you like.



Result



documentclass[margin=1cm, tikz]{standalone}
usepackage{tikz,xcolor,color}
usetikzlibrary{fit}
begin{document}

tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
outline/.style={draw=circle edge, thick}}

setlength{parskip}{5mm}

begin{tikzpicture}
% Definition of circles
deffirstcircle{(0,0) circle (1.5cm)}
defsecondcircle{(0:2cm) circle (1.5cm)}
%
colorlet{circle edge}{black!50}
colorlet{circle area}{gray!20}
%
begin{scope}[local bounding box = orScope]
draw[filled] firstcircle node {$A$}
secondcircle node {$B$};
node[anchor=south] at (orScope.north){$M$};
node[anchor=north] at (orScope.south) {$A cup B$};
end{scope}
node[fit=(orScope), draw] {};% The frame around the scope
%
begin{scope}[xshift = 7cm,local bounding box = andScope]
begin{scope}
clip firstcircle;
fill[filled] secondcircle;
end{scope}
draw[outline] firstcircle node {$A$};
draw[outline] secondcircle node {$B$};
node[anchor=south] at (andScope.north) {$M$};
node[anchor=west] at (andScope.south east) {$A cap B$};
end{scope}
node[fit=(andScope), draw] {};
end{tikzpicture}

end{document}





share|improve this answer































    1














    Another solution:



    If you really wants to use minipage, you have to put the environment outside tikzpicture. Literally minipage does nothing for you here, but it does many things against you.



    However, for figures side-by-side, a subfigure environment (from subcaption) is better in this case.



    And, to draw a rectangle, you can use the special node current bounding box, with some shifts if needed.



    Btw your diagrams are too wide for the normal margin.



    documentclass{article}
    usepackage[margin=1in]{geometry}
    usepackage{tikz}
    % Definition of circles
    deffirstcircle{(0,0) circle (1.5cm)}
    defsecondcircle{(0:2cm) circle (1.5cm)}

    colorlet{circle edge}{black!50}
    colorlet{circle area}{gray!20}

    tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
    outline/.style={draw=circle edge, thick}}

    setlength{parskip}{5mm}
    begin{document}
    noindentbegin{minipage}[t]{.5textwidth}
    centering%
    begin{tikzpicture}
    draw[filled] firstcircle node {$A$}
    secondcircle node {$B$};
    node[anchor=south] at (current bounding box.north) {$M$};
    end{tikzpicture}
    end{minipage}%
    begin{minipage}[t]{.5textwidth}
    centering%
    begin{tikzpicture}
    begin{scope}
    clip firstcircle;
    fill[filled] secondcircle;
    end{scope}
    draw[outline] firstcircle node {$A$};
    draw[outline] secondcircle node {$B$};
    node[anchor=south] at (current bounding box.north) {$M$};
    node[anchor=west] at (current bounding box.east) {$A cap B$};
    draw ([shift={(-1ex,1ex)}]current bounding box.north west) rectangle
    ([shift={(1ex,-1ex)}]current bounding box.south east);
    end{tikzpicture}
    end{minipage}
    end{document}


    enter image description here






    share|improve this answer































      0














      There are dedicated packages for that. Assuming you do not want to use any of those, I'd like to advertize some styles that help you drawing these diagrams. These are not inside, inside to specify the sets and frame for drawing a frame around these pictures. Your first picture is easy, you only need to fill the circles. The second one can be achieved with



      pgfkeys{inside/.list={pathA,pathB},shade=gray}


      and the frames can be done with



      draw[frame=5pt];


      where 5pt indicates the margin.



      Here are code and result.



      documentclass{article}
      usepackage{tikz}
      usetikzlibrary{backgrounds}
      % based on https://tex.stackexchange.com/a/12033/121799
      tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
      (current bounding box.north east)} },
      use path/.code={pgfsetpath#1},%learned from Kpym
      frame/.style={insert path={
      ([xshift=-#1,yshift=-#1]current bounding box.south west) rectangle
      ([xshift=#1,yshift=#1]current bounding box.north east)}}
      }
      begin{document}
      pgfkeys{not inside/.code={clip[use path=#1,reverseclip];},
      inside/.code={clip[use path=#1];},
      shade/.code=fill[#1] (current bounding box.south west)rectangle
      (current bounding box.north east);}
      begin{tikzpicture}
      draw[thick,fill=gray] (-1,0) node{$A$} circle [radius=1.5cm]
      (1,0) node{$B$} circle[radius=1.5cm] (0,1.5) node[above]{$M$}
      (0,-1.5) node[below]{$Acup B$};
      draw[frame=5pt];
      end{tikzpicture}~%
      begin{tikzpicture}
      draw[thick,save path=pathA] (-1,0) node{$A$} circle [radius=1.5cm];
      draw[thick,save path=pathB] (1,0) node{$B$} circle[radius=1.5cm];
      path (0,1.5) node[above]{$M$}
      (0,-1.5) node[below]{$Acap B$};
      begin{scope}[on background layer]
      pgfkeys{inside/.list={pathA,pathB},shade=gray}
      end{scope}
      draw[frame=5pt];
      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
        });


        }
        });






        Matheus Chebli 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%2f489535%2fhow-can-i-draw-a-rectangle-around-venn-diagrams%23new-answer', 'question_page');
        }
        );

        Post as a guest















        Required, but never shown

























        3 Answers
        3






        active

        oldest

        votes








        3 Answers
        3






        active

        oldest

        votes









        active

        oldest

        votes






        active

        oldest

        votes









        2














        Welcome to TeX.SE! It is good that you included your code. In terms of drawing a rectangle around the venn diagram, you could import the fit library from Tikz using usetikzlibrary{fit}. I have completed an example to illustrate. Also, I have changed the code a little bit. You now have one tikzpicture (with no minipage). The first venn diagram has its own scope and the second has its own as well. I have changed the placement of M so that it would be easier to read. There are two types overall in terms of appearance, you choose the one you like.



        Result



        documentclass[margin=1cm, tikz]{standalone}
        usepackage{tikz,xcolor,color}
        usetikzlibrary{fit}
        begin{document}

        tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
        outline/.style={draw=circle edge, thick}}

        setlength{parskip}{5mm}

        begin{tikzpicture}
        % Definition of circles
        deffirstcircle{(0,0) circle (1.5cm)}
        defsecondcircle{(0:2cm) circle (1.5cm)}
        %
        colorlet{circle edge}{black!50}
        colorlet{circle area}{gray!20}
        %
        begin{scope}[local bounding box = orScope]
        draw[filled] firstcircle node {$A$}
        secondcircle node {$B$};
        node[anchor=south] at (orScope.north){$M$};
        node[anchor=north] at (orScope.south) {$A cup B$};
        end{scope}
        node[fit=(orScope), draw] {};% The frame around the scope
        %
        begin{scope}[xshift = 7cm,local bounding box = andScope]
        begin{scope}
        clip firstcircle;
        fill[filled] secondcircle;
        end{scope}
        draw[outline] firstcircle node {$A$};
        draw[outline] secondcircle node {$B$};
        node[anchor=south] at (andScope.north) {$M$};
        node[anchor=west] at (andScope.south east) {$A cap B$};
        end{scope}
        node[fit=(andScope), draw] {};
        end{tikzpicture}

        end{document}





        share|improve this answer




























          2














          Welcome to TeX.SE! It is good that you included your code. In terms of drawing a rectangle around the venn diagram, you could import the fit library from Tikz using usetikzlibrary{fit}. I have completed an example to illustrate. Also, I have changed the code a little bit. You now have one tikzpicture (with no minipage). The first venn diagram has its own scope and the second has its own as well. I have changed the placement of M so that it would be easier to read. There are two types overall in terms of appearance, you choose the one you like.



          Result



          documentclass[margin=1cm, tikz]{standalone}
          usepackage{tikz,xcolor,color}
          usetikzlibrary{fit}
          begin{document}

          tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
          outline/.style={draw=circle edge, thick}}

          setlength{parskip}{5mm}

          begin{tikzpicture}
          % Definition of circles
          deffirstcircle{(0,0) circle (1.5cm)}
          defsecondcircle{(0:2cm) circle (1.5cm)}
          %
          colorlet{circle edge}{black!50}
          colorlet{circle area}{gray!20}
          %
          begin{scope}[local bounding box = orScope]
          draw[filled] firstcircle node {$A$}
          secondcircle node {$B$};
          node[anchor=south] at (orScope.north){$M$};
          node[anchor=north] at (orScope.south) {$A cup B$};
          end{scope}
          node[fit=(orScope), draw] {};% The frame around the scope
          %
          begin{scope}[xshift = 7cm,local bounding box = andScope]
          begin{scope}
          clip firstcircle;
          fill[filled] secondcircle;
          end{scope}
          draw[outline] firstcircle node {$A$};
          draw[outline] secondcircle node {$B$};
          node[anchor=south] at (andScope.north) {$M$};
          node[anchor=west] at (andScope.south east) {$A cap B$};
          end{scope}
          node[fit=(andScope), draw] {};
          end{tikzpicture}

          end{document}





          share|improve this answer


























            2












            2








            2







            Welcome to TeX.SE! It is good that you included your code. In terms of drawing a rectangle around the venn diagram, you could import the fit library from Tikz using usetikzlibrary{fit}. I have completed an example to illustrate. Also, I have changed the code a little bit. You now have one tikzpicture (with no minipage). The first venn diagram has its own scope and the second has its own as well. I have changed the placement of M so that it would be easier to read. There are two types overall in terms of appearance, you choose the one you like.



            Result



            documentclass[margin=1cm, tikz]{standalone}
            usepackage{tikz,xcolor,color}
            usetikzlibrary{fit}
            begin{document}

            tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
            outline/.style={draw=circle edge, thick}}

            setlength{parskip}{5mm}

            begin{tikzpicture}
            % Definition of circles
            deffirstcircle{(0,0) circle (1.5cm)}
            defsecondcircle{(0:2cm) circle (1.5cm)}
            %
            colorlet{circle edge}{black!50}
            colorlet{circle area}{gray!20}
            %
            begin{scope}[local bounding box = orScope]
            draw[filled] firstcircle node {$A$}
            secondcircle node {$B$};
            node[anchor=south] at (orScope.north){$M$};
            node[anchor=north] at (orScope.south) {$A cup B$};
            end{scope}
            node[fit=(orScope), draw] {};% The frame around the scope
            %
            begin{scope}[xshift = 7cm,local bounding box = andScope]
            begin{scope}
            clip firstcircle;
            fill[filled] secondcircle;
            end{scope}
            draw[outline] firstcircle node {$A$};
            draw[outline] secondcircle node {$B$};
            node[anchor=south] at (andScope.north) {$M$};
            node[anchor=west] at (andScope.south east) {$A cap B$};
            end{scope}
            node[fit=(andScope), draw] {};
            end{tikzpicture}

            end{document}





            share|improve this answer













            Welcome to TeX.SE! It is good that you included your code. In terms of drawing a rectangle around the venn diagram, you could import the fit library from Tikz using usetikzlibrary{fit}. I have completed an example to illustrate. Also, I have changed the code a little bit. You now have one tikzpicture (with no minipage). The first venn diagram has its own scope and the second has its own as well. I have changed the placement of M so that it would be easier to read. There are two types overall in terms of appearance, you choose the one you like.



            Result



            documentclass[margin=1cm, tikz]{standalone}
            usepackage{tikz,xcolor,color}
            usetikzlibrary{fit}
            begin{document}

            tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
            outline/.style={draw=circle edge, thick}}

            setlength{parskip}{5mm}

            begin{tikzpicture}
            % Definition of circles
            deffirstcircle{(0,0) circle (1.5cm)}
            defsecondcircle{(0:2cm) circle (1.5cm)}
            %
            colorlet{circle edge}{black!50}
            colorlet{circle area}{gray!20}
            %
            begin{scope}[local bounding box = orScope]
            draw[filled] firstcircle node {$A$}
            secondcircle node {$B$};
            node[anchor=south] at (orScope.north){$M$};
            node[anchor=north] at (orScope.south) {$A cup B$};
            end{scope}
            node[fit=(orScope), draw] {};% The frame around the scope
            %
            begin{scope}[xshift = 7cm,local bounding box = andScope]
            begin{scope}
            clip firstcircle;
            fill[filled] secondcircle;
            end{scope}
            draw[outline] firstcircle node {$A$};
            draw[outline] secondcircle node {$B$};
            node[anchor=south] at (andScope.north) {$M$};
            node[anchor=west] at (andScope.south east) {$A cap B$};
            end{scope}
            node[fit=(andScope), draw] {};
            end{tikzpicture}

            end{document}






            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered 57 mins ago









            M. Al JumailyM. Al Jumaily

            516128




            516128























                1














                Another solution:



                If you really wants to use minipage, you have to put the environment outside tikzpicture. Literally minipage does nothing for you here, but it does many things against you.



                However, for figures side-by-side, a subfigure environment (from subcaption) is better in this case.



                And, to draw a rectangle, you can use the special node current bounding box, with some shifts if needed.



                Btw your diagrams are too wide for the normal margin.



                documentclass{article}
                usepackage[margin=1in]{geometry}
                usepackage{tikz}
                % Definition of circles
                deffirstcircle{(0,0) circle (1.5cm)}
                defsecondcircle{(0:2cm) circle (1.5cm)}

                colorlet{circle edge}{black!50}
                colorlet{circle area}{gray!20}

                tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
                outline/.style={draw=circle edge, thick}}

                setlength{parskip}{5mm}
                begin{document}
                noindentbegin{minipage}[t]{.5textwidth}
                centering%
                begin{tikzpicture}
                draw[filled] firstcircle node {$A$}
                secondcircle node {$B$};
                node[anchor=south] at (current bounding box.north) {$M$};
                end{tikzpicture}
                end{minipage}%
                begin{minipage}[t]{.5textwidth}
                centering%
                begin{tikzpicture}
                begin{scope}
                clip firstcircle;
                fill[filled] secondcircle;
                end{scope}
                draw[outline] firstcircle node {$A$};
                draw[outline] secondcircle node {$B$};
                node[anchor=south] at (current bounding box.north) {$M$};
                node[anchor=west] at (current bounding box.east) {$A cap B$};
                draw ([shift={(-1ex,1ex)}]current bounding box.north west) rectangle
                ([shift={(1ex,-1ex)}]current bounding box.south east);
                end{tikzpicture}
                end{minipage}
                end{document}


                enter image description here






                share|improve this answer




























                  1














                  Another solution:



                  If you really wants to use minipage, you have to put the environment outside tikzpicture. Literally minipage does nothing for you here, but it does many things against you.



                  However, for figures side-by-side, a subfigure environment (from subcaption) is better in this case.



                  And, to draw a rectangle, you can use the special node current bounding box, with some shifts if needed.



                  Btw your diagrams are too wide for the normal margin.



                  documentclass{article}
                  usepackage[margin=1in]{geometry}
                  usepackage{tikz}
                  % Definition of circles
                  deffirstcircle{(0,0) circle (1.5cm)}
                  defsecondcircle{(0:2cm) circle (1.5cm)}

                  colorlet{circle edge}{black!50}
                  colorlet{circle area}{gray!20}

                  tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
                  outline/.style={draw=circle edge, thick}}

                  setlength{parskip}{5mm}
                  begin{document}
                  noindentbegin{minipage}[t]{.5textwidth}
                  centering%
                  begin{tikzpicture}
                  draw[filled] firstcircle node {$A$}
                  secondcircle node {$B$};
                  node[anchor=south] at (current bounding box.north) {$M$};
                  end{tikzpicture}
                  end{minipage}%
                  begin{minipage}[t]{.5textwidth}
                  centering%
                  begin{tikzpicture}
                  begin{scope}
                  clip firstcircle;
                  fill[filled] secondcircle;
                  end{scope}
                  draw[outline] firstcircle node {$A$};
                  draw[outline] secondcircle node {$B$};
                  node[anchor=south] at (current bounding box.north) {$M$};
                  node[anchor=west] at (current bounding box.east) {$A cap B$};
                  draw ([shift={(-1ex,1ex)}]current bounding box.north west) rectangle
                  ([shift={(1ex,-1ex)}]current bounding box.south east);
                  end{tikzpicture}
                  end{minipage}
                  end{document}


                  enter image description here






                  share|improve this answer


























                    1












                    1








                    1







                    Another solution:



                    If you really wants to use minipage, you have to put the environment outside tikzpicture. Literally minipage does nothing for you here, but it does many things against you.



                    However, for figures side-by-side, a subfigure environment (from subcaption) is better in this case.



                    And, to draw a rectangle, you can use the special node current bounding box, with some shifts if needed.



                    Btw your diagrams are too wide for the normal margin.



                    documentclass{article}
                    usepackage[margin=1in]{geometry}
                    usepackage{tikz}
                    % Definition of circles
                    deffirstcircle{(0,0) circle (1.5cm)}
                    defsecondcircle{(0:2cm) circle (1.5cm)}

                    colorlet{circle edge}{black!50}
                    colorlet{circle area}{gray!20}

                    tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
                    outline/.style={draw=circle edge, thick}}

                    setlength{parskip}{5mm}
                    begin{document}
                    noindentbegin{minipage}[t]{.5textwidth}
                    centering%
                    begin{tikzpicture}
                    draw[filled] firstcircle node {$A$}
                    secondcircle node {$B$};
                    node[anchor=south] at (current bounding box.north) {$M$};
                    end{tikzpicture}
                    end{minipage}%
                    begin{minipage}[t]{.5textwidth}
                    centering%
                    begin{tikzpicture}
                    begin{scope}
                    clip firstcircle;
                    fill[filled] secondcircle;
                    end{scope}
                    draw[outline] firstcircle node {$A$};
                    draw[outline] secondcircle node {$B$};
                    node[anchor=south] at (current bounding box.north) {$M$};
                    node[anchor=west] at (current bounding box.east) {$A cap B$};
                    draw ([shift={(-1ex,1ex)}]current bounding box.north west) rectangle
                    ([shift={(1ex,-1ex)}]current bounding box.south east);
                    end{tikzpicture}
                    end{minipage}
                    end{document}


                    enter image description here






                    share|improve this answer













                    Another solution:



                    If you really wants to use minipage, you have to put the environment outside tikzpicture. Literally minipage does nothing for you here, but it does many things against you.



                    However, for figures side-by-side, a subfigure environment (from subcaption) is better in this case.



                    And, to draw a rectangle, you can use the special node current bounding box, with some shifts if needed.



                    Btw your diagrams are too wide for the normal margin.



                    documentclass{article}
                    usepackage[margin=1in]{geometry}
                    usepackage{tikz}
                    % Definition of circles
                    deffirstcircle{(0,0) circle (1.5cm)}
                    defsecondcircle{(0:2cm) circle (1.5cm)}

                    colorlet{circle edge}{black!50}
                    colorlet{circle area}{gray!20}

                    tikzset{filled/.style={fill=circle area, draw=circle edge, thick},
                    outline/.style={draw=circle edge, thick}}

                    setlength{parskip}{5mm}
                    begin{document}
                    noindentbegin{minipage}[t]{.5textwidth}
                    centering%
                    begin{tikzpicture}
                    draw[filled] firstcircle node {$A$}
                    secondcircle node {$B$};
                    node[anchor=south] at (current bounding box.north) {$M$};
                    end{tikzpicture}
                    end{minipage}%
                    begin{minipage}[t]{.5textwidth}
                    centering%
                    begin{tikzpicture}
                    begin{scope}
                    clip firstcircle;
                    fill[filled] secondcircle;
                    end{scope}
                    draw[outline] firstcircle node {$A$};
                    draw[outline] secondcircle node {$B$};
                    node[anchor=south] at (current bounding box.north) {$M$};
                    node[anchor=west] at (current bounding box.east) {$A cap B$};
                    draw ([shift={(-1ex,1ex)}]current bounding box.north west) rectangle
                    ([shift={(1ex,-1ex)}]current bounding box.south east);
                    end{tikzpicture}
                    end{minipage}
                    end{document}


                    enter image description here







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered 49 mins ago









                    JouleVJouleV

                    16.4k22668




                    16.4k22668























                        0














                        There are dedicated packages for that. Assuming you do not want to use any of those, I'd like to advertize some styles that help you drawing these diagrams. These are not inside, inside to specify the sets and frame for drawing a frame around these pictures. Your first picture is easy, you only need to fill the circles. The second one can be achieved with



                        pgfkeys{inside/.list={pathA,pathB},shade=gray}


                        and the frames can be done with



                        draw[frame=5pt];


                        where 5pt indicates the margin.



                        Here are code and result.



                        documentclass{article}
                        usepackage{tikz}
                        usetikzlibrary{backgrounds}
                        % based on https://tex.stackexchange.com/a/12033/121799
                        tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
                        (current bounding box.north east)} },
                        use path/.code={pgfsetpath#1},%learned from Kpym
                        frame/.style={insert path={
                        ([xshift=-#1,yshift=-#1]current bounding box.south west) rectangle
                        ([xshift=#1,yshift=#1]current bounding box.north east)}}
                        }
                        begin{document}
                        pgfkeys{not inside/.code={clip[use path=#1,reverseclip];},
                        inside/.code={clip[use path=#1];},
                        shade/.code=fill[#1] (current bounding box.south west)rectangle
                        (current bounding box.north east);}
                        begin{tikzpicture}
                        draw[thick,fill=gray] (-1,0) node{$A$} circle [radius=1.5cm]
                        (1,0) node{$B$} circle[radius=1.5cm] (0,1.5) node[above]{$M$}
                        (0,-1.5) node[below]{$Acup B$};
                        draw[frame=5pt];
                        end{tikzpicture}~%
                        begin{tikzpicture}
                        draw[thick,save path=pathA] (-1,0) node{$A$} circle [radius=1.5cm];
                        draw[thick,save path=pathB] (1,0) node{$B$} circle[radius=1.5cm];
                        path (0,1.5) node[above]{$M$}
                        (0,-1.5) node[below]{$Acap B$};
                        begin{scope}[on background layer]
                        pgfkeys{inside/.list={pathA,pathB},shade=gray}
                        end{scope}
                        draw[frame=5pt];
                        end{tikzpicture}
                        end{document}


                        enter image description here






                        share|improve this answer




























                          0














                          There are dedicated packages for that. Assuming you do not want to use any of those, I'd like to advertize some styles that help you drawing these diagrams. These are not inside, inside to specify the sets and frame for drawing a frame around these pictures. Your first picture is easy, you only need to fill the circles. The second one can be achieved with



                          pgfkeys{inside/.list={pathA,pathB},shade=gray}


                          and the frames can be done with



                          draw[frame=5pt];


                          where 5pt indicates the margin.



                          Here are code and result.



                          documentclass{article}
                          usepackage{tikz}
                          usetikzlibrary{backgrounds}
                          % based on https://tex.stackexchange.com/a/12033/121799
                          tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
                          (current bounding box.north east)} },
                          use path/.code={pgfsetpath#1},%learned from Kpym
                          frame/.style={insert path={
                          ([xshift=-#1,yshift=-#1]current bounding box.south west) rectangle
                          ([xshift=#1,yshift=#1]current bounding box.north east)}}
                          }
                          begin{document}
                          pgfkeys{not inside/.code={clip[use path=#1,reverseclip];},
                          inside/.code={clip[use path=#1];},
                          shade/.code=fill[#1] (current bounding box.south west)rectangle
                          (current bounding box.north east);}
                          begin{tikzpicture}
                          draw[thick,fill=gray] (-1,0) node{$A$} circle [radius=1.5cm]
                          (1,0) node{$B$} circle[radius=1.5cm] (0,1.5) node[above]{$M$}
                          (0,-1.5) node[below]{$Acup B$};
                          draw[frame=5pt];
                          end{tikzpicture}~%
                          begin{tikzpicture}
                          draw[thick,save path=pathA] (-1,0) node{$A$} circle [radius=1.5cm];
                          draw[thick,save path=pathB] (1,0) node{$B$} circle[radius=1.5cm];
                          path (0,1.5) node[above]{$M$}
                          (0,-1.5) node[below]{$Acap B$};
                          begin{scope}[on background layer]
                          pgfkeys{inside/.list={pathA,pathB},shade=gray}
                          end{scope}
                          draw[frame=5pt];
                          end{tikzpicture}
                          end{document}


                          enter image description here






                          share|improve this answer


























                            0












                            0








                            0







                            There are dedicated packages for that. Assuming you do not want to use any of those, I'd like to advertize some styles that help you drawing these diagrams. These are not inside, inside to specify the sets and frame for drawing a frame around these pictures. Your first picture is easy, you only need to fill the circles. The second one can be achieved with



                            pgfkeys{inside/.list={pathA,pathB},shade=gray}


                            and the frames can be done with



                            draw[frame=5pt];


                            where 5pt indicates the margin.



                            Here are code and result.



                            documentclass{article}
                            usepackage{tikz}
                            usetikzlibrary{backgrounds}
                            % based on https://tex.stackexchange.com/a/12033/121799
                            tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
                            (current bounding box.north east)} },
                            use path/.code={pgfsetpath#1},%learned from Kpym
                            frame/.style={insert path={
                            ([xshift=-#1,yshift=-#1]current bounding box.south west) rectangle
                            ([xshift=#1,yshift=#1]current bounding box.north east)}}
                            }
                            begin{document}
                            pgfkeys{not inside/.code={clip[use path=#1,reverseclip];},
                            inside/.code={clip[use path=#1];},
                            shade/.code=fill[#1] (current bounding box.south west)rectangle
                            (current bounding box.north east);}
                            begin{tikzpicture}
                            draw[thick,fill=gray] (-1,0) node{$A$} circle [radius=1.5cm]
                            (1,0) node{$B$} circle[radius=1.5cm] (0,1.5) node[above]{$M$}
                            (0,-1.5) node[below]{$Acup B$};
                            draw[frame=5pt];
                            end{tikzpicture}~%
                            begin{tikzpicture}
                            draw[thick,save path=pathA] (-1,0) node{$A$} circle [radius=1.5cm];
                            draw[thick,save path=pathB] (1,0) node{$B$} circle[radius=1.5cm];
                            path (0,1.5) node[above]{$M$}
                            (0,-1.5) node[below]{$Acap B$};
                            begin{scope}[on background layer]
                            pgfkeys{inside/.list={pathA,pathB},shade=gray}
                            end{scope}
                            draw[frame=5pt];
                            end{tikzpicture}
                            end{document}


                            enter image description here






                            share|improve this answer













                            There are dedicated packages for that. Assuming you do not want to use any of those, I'd like to advertize some styles that help you drawing these diagrams. These are not inside, inside to specify the sets and frame for drawing a frame around these pictures. Your first picture is easy, you only need to fill the circles. The second one can be achieved with



                            pgfkeys{inside/.list={pathA,pathB},shade=gray}


                            and the frames can be done with



                            draw[frame=5pt];


                            where 5pt indicates the margin.



                            Here are code and result.



                            documentclass{article}
                            usepackage{tikz}
                            usetikzlibrary{backgrounds}
                            % based on https://tex.stackexchange.com/a/12033/121799
                            tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
                            (current bounding box.north east)} },
                            use path/.code={pgfsetpath#1},%learned from Kpym
                            frame/.style={insert path={
                            ([xshift=-#1,yshift=-#1]current bounding box.south west) rectangle
                            ([xshift=#1,yshift=#1]current bounding box.north east)}}
                            }
                            begin{document}
                            pgfkeys{not inside/.code={clip[use path=#1,reverseclip];},
                            inside/.code={clip[use path=#1];},
                            shade/.code=fill[#1] (current bounding box.south west)rectangle
                            (current bounding box.north east);}
                            begin{tikzpicture}
                            draw[thick,fill=gray] (-1,0) node{$A$} circle [radius=1.5cm]
                            (1,0) node{$B$} circle[radius=1.5cm] (0,1.5) node[above]{$M$}
                            (0,-1.5) node[below]{$Acup B$};
                            draw[frame=5pt];
                            end{tikzpicture}~%
                            begin{tikzpicture}
                            draw[thick,save path=pathA] (-1,0) node{$A$} circle [radius=1.5cm];
                            draw[thick,save path=pathB] (1,0) node{$B$} circle[radius=1.5cm];
                            path (0,1.5) node[above]{$M$}
                            (0,-1.5) node[below]{$Acap B$};
                            begin{scope}[on background layer]
                            pgfkeys{inside/.list={pathA,pathB},shade=gray}
                            end{scope}
                            draw[frame=5pt];
                            end{tikzpicture}
                            end{document}


                            enter image description here







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered 24 mins ago









                            marmotmarmot

                            124k6161305




                            124k6161305






















                                Matheus Chebli is a new contributor. Be nice, and check out our Code of Conduct.










                                draft saved

                                draft discarded


















                                Matheus Chebli is a new contributor. Be nice, and check out our Code of Conduct.













                                Matheus Chebli is a new contributor. Be nice, and check out our Code of Conduct.












                                Matheus Chebli 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%2f489535%2fhow-can-i-draw-a-rectangle-around-venn-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

                                Taj Mahal Inhaltsverzeichnis Aufbau | Geschichte | 350-Jahr-Feier | Heutige Bedeutung | Siehe auch |...

                                Baia Sprie Cuprins Etimologie | Istorie | Demografie | Politică și administrație | Arii naturale...

                                Nicolae Petrescu-Găină Cuprins Biografie | Opera | In memoriam | Varia | Controverse, incertitudini...