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
Can a player choose to add detail and flavor to their character's spells and abilities?
Which "exotic salt" can lower water's freezing point by 70 °C?
Why doesn't Remus Lupin turn into a werewolf in the scene where Harry looks for Peter Pettigrew on the Marauder's Map?
HTML folder located within IOS Image file?
Picking a theme as a discovery writer
Justification of physical currency in an interstellar civilization?
call() a function within its own context
Why can’t you see at the start of the Big Bang?
Is there a reason why Turkey took the Balkan territories of the Ottoman Empire, instead of Greece or another of the Balkan states?
Is it safe to keep the GPU on 100% utilization for a very long time?
Concatenate all values of the same XML element using XPath/XQuery
What calendar would the Saturn nation use?
Did any early RISC OS precursor run on the BBC Micro?
Scaling rounded rectangles in Illustrator
Why doesn't a particle exert force on itself?
Was there a dinosaur-counter in the original Jurassic Park movie?
A♭ major 9th chord in Bach is unexpectedly dissonant/jazzy
Splitting polygons and dividing attribute value proportionally using ArcGIS Pro?
How to get the decimal part of a number in apex
In the figure, a quarter circle, a semicircle and a circle are mutually tangent inside a square of side length 2. Find the radius of the circle.
Convert a huge txt-file into a dataset
When does WordPress.org notify sites of new version?
How does "politician" work as a job/career?
Can anyone identify this unknown 1988 PC card from The Palantir Corporation?
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
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)
colorletcircle edgeblack!50
colorletcircle areagrey!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
% Set A or B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endminipage
endtikzpicture
% Set A and B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$
endminipage
endtikzpicture
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
New contributor
add a comment |
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)
colorletcircle edgeblack!50
colorletcircle areagrey!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
% Set A or B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endminipage
endtikzpicture
% Set A and B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$
endminipage
endtikzpicture
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
New contributor
Welcome to TeX.SE!
– Kurt
1 hour ago
You should not useminipage
inside TikZ pictures
– JouleV
1 hour ago
add a comment |
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)
colorletcircle edgeblack!50
colorletcircle areagrey!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
% Set A or B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endminipage
endtikzpicture
% Set A and B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$
endminipage
endtikzpicture
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
New contributor
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)
colorletcircle edgeblack!50
colorletcircle areagrey!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
% Set A or B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endminipage
endtikzpicture
% Set A and B
begintikzpicture
beginminipage[t][2cm][t].48textwidth
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$
endminipage
endtikzpicture
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
tikz-pgf bounding-box venn-diagrams
New contributor
New contributor
New contributor
asked 2 hours ago
Matheus ChebliMatheus Chebli
161
161
New contributor
New contributor
Welcome to TeX.SE!
– Kurt
1 hour ago
You should not useminipage
inside TikZ pictures
– JouleV
1 hour ago
add a comment |
Welcome to TeX.SE!
– Kurt
1 hour ago
You should not useminipage
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
add a comment |
3 Answers
3
active
oldest
votes
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 usetikzlibraryfit
. 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.
documentclass[margin=1cm, tikz]standalone
usepackagetikz,xcolor,color
usetikzlibraryfit
begindocument
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begintikzpicture
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
%
colorletcircle edgeblack!50
colorletcircle areagray!20
%
beginscope[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$;
endscope
node[fit=(orScope), draw] ;% The frame around the scope
%
beginscope[xshift = 7cm,local bounding box = andScope]
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$;
endscope
node[fit=(andScope), draw] ;
endtikzpicture
enddocument
add a comment |
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.
documentclassarticle
usepackage[margin=1in]geometry
usepackagetikz
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
colorletcircle edgeblack!50
colorletcircle areagray!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begindocument
noindentbeginminipage[t].5textwidth
centering%
begintikzpicture
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endtikzpicture
endminipage%
beginminipage[t].5textwidth
centering%
begintikzpicture
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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);
endtikzpicture
endminipage
enddocument
add a comment |
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
pgfkeysinside/.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.
documentclassarticle
usepackagetikz
usetikzlibrarybackgrounds
% based on https://tex.stackexchange.com/a/12033/121799
tikzsetreverseclip/.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)
begindocument
pgfkeysnot 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);
begintikzpicture
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];
endtikzpicture~%
begintikzpicture
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$;
beginscope[on background layer]
pgfkeysinside/.list=pathA,pathB,shade=gray
endscope
draw[frame=5pt];
endtikzpicture
enddocument
add a comment |
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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 usetikzlibraryfit
. 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.
documentclass[margin=1cm, tikz]standalone
usepackagetikz,xcolor,color
usetikzlibraryfit
begindocument
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begintikzpicture
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
%
colorletcircle edgeblack!50
colorletcircle areagray!20
%
beginscope[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$;
endscope
node[fit=(orScope), draw] ;% The frame around the scope
%
beginscope[xshift = 7cm,local bounding box = andScope]
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$;
endscope
node[fit=(andScope), draw] ;
endtikzpicture
enddocument
add a comment |
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 usetikzlibraryfit
. 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.
documentclass[margin=1cm, tikz]standalone
usepackagetikz,xcolor,color
usetikzlibraryfit
begindocument
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begintikzpicture
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
%
colorletcircle edgeblack!50
colorletcircle areagray!20
%
beginscope[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$;
endscope
node[fit=(orScope), draw] ;% The frame around the scope
%
beginscope[xshift = 7cm,local bounding box = andScope]
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$;
endscope
node[fit=(andScope), draw] ;
endtikzpicture
enddocument
add a comment |
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 usetikzlibraryfit
. 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.
documentclass[margin=1cm, tikz]standalone
usepackagetikz,xcolor,color
usetikzlibraryfit
begindocument
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begintikzpicture
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
%
colorletcircle edgeblack!50
colorletcircle areagray!20
%
beginscope[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$;
endscope
node[fit=(orScope), draw] ;% The frame around the scope
%
beginscope[xshift = 7cm,local bounding box = andScope]
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$;
endscope
node[fit=(andScope), draw] ;
endtikzpicture
enddocument
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 usetikzlibraryfit
. 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.
documentclass[margin=1cm, tikz]standalone
usepackagetikz,xcolor,color
usetikzlibraryfit
begindocument
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begintikzpicture
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
%
colorletcircle edgeblack!50
colorletcircle areagray!20
%
beginscope[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$;
endscope
node[fit=(orScope), draw] ;% The frame around the scope
%
beginscope[xshift = 7cm,local bounding box = andScope]
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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$;
endscope
node[fit=(andScope), draw] ;
endtikzpicture
enddocument
answered 1 hour ago
M. Al JumailyM. Al Jumaily
516128
516128
add a comment |
add a comment |
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.
documentclassarticle
usepackage[margin=1in]geometry
usepackagetikz
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
colorletcircle edgeblack!50
colorletcircle areagray!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begindocument
noindentbeginminipage[t].5textwidth
centering%
begintikzpicture
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endtikzpicture
endminipage%
beginminipage[t].5textwidth
centering%
begintikzpicture
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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);
endtikzpicture
endminipage
enddocument
add a comment |
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.
documentclassarticle
usepackage[margin=1in]geometry
usepackagetikz
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
colorletcircle edgeblack!50
colorletcircle areagray!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begindocument
noindentbeginminipage[t].5textwidth
centering%
begintikzpicture
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endtikzpicture
endminipage%
beginminipage[t].5textwidth
centering%
begintikzpicture
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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);
endtikzpicture
endminipage
enddocument
add a comment |
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.
documentclassarticle
usepackage[margin=1in]geometry
usepackagetikz
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
colorletcircle edgeblack!50
colorletcircle areagray!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begindocument
noindentbeginminipage[t].5textwidth
centering%
begintikzpicture
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endtikzpicture
endminipage%
beginminipage[t].5textwidth
centering%
begintikzpicture
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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);
endtikzpicture
endminipage
enddocument
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.
documentclassarticle
usepackage[margin=1in]geometry
usepackagetikz
% Definition of circles
deffirstcircle(0,0) circle (1.5cm)
defsecondcircle(0:2cm) circle (1.5cm)
colorletcircle edgeblack!50
colorletcircle areagray!20
tikzsetfilled/.style=fill=circle area, draw=circle edge, thick,
outline/.style=draw=circle edge, thick
setlengthparskip5mm
begindocument
noindentbeginminipage[t].5textwidth
centering%
begintikzpicture
draw[filled] firstcircle node $A$
secondcircle node $B$;
node[anchor=south] at (current bounding box.north) $M$;
endtikzpicture
endminipage%
beginminipage[t].5textwidth
centering%
begintikzpicture
beginscope
clip firstcircle;
fill[filled] secondcircle;
endscope
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);
endtikzpicture
endminipage
enddocument
answered 1 hour ago
JouleVJouleV
16.4k22668
16.4k22668
add a comment |
add a comment |
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
pgfkeysinside/.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.
documentclassarticle
usepackagetikz
usetikzlibrarybackgrounds
% based on https://tex.stackexchange.com/a/12033/121799
tikzsetreverseclip/.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)
begindocument
pgfkeysnot 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);
begintikzpicture
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];
endtikzpicture~%
begintikzpicture
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$;
beginscope[on background layer]
pgfkeysinside/.list=pathA,pathB,shade=gray
endscope
draw[frame=5pt];
endtikzpicture
enddocument
add a comment |
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
pgfkeysinside/.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.
documentclassarticle
usepackagetikz
usetikzlibrarybackgrounds
% based on https://tex.stackexchange.com/a/12033/121799
tikzsetreverseclip/.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)
begindocument
pgfkeysnot 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);
begintikzpicture
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];
endtikzpicture~%
begintikzpicture
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$;
beginscope[on background layer]
pgfkeysinside/.list=pathA,pathB,shade=gray
endscope
draw[frame=5pt];
endtikzpicture
enddocument
add a comment |
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
pgfkeysinside/.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.
documentclassarticle
usepackagetikz
usetikzlibrarybackgrounds
% based on https://tex.stackexchange.com/a/12033/121799
tikzsetreverseclip/.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)
begindocument
pgfkeysnot 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);
begintikzpicture
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];
endtikzpicture~%
begintikzpicture
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$;
beginscope[on background layer]
pgfkeysinside/.list=pathA,pathB,shade=gray
endscope
draw[frame=5pt];
endtikzpicture
enddocument
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
pgfkeysinside/.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.
documentclassarticle
usepackagetikz
usetikzlibrarybackgrounds
% based on https://tex.stackexchange.com/a/12033/121799
tikzsetreverseclip/.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)
begindocument
pgfkeysnot 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);
begintikzpicture
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];
endtikzpicture~%
begintikzpicture
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$;
beginscope[on background layer]
pgfkeysinside/.list=pathA,pathB,shade=gray
endscope
draw[frame=5pt];
endtikzpicture
enddocument
answered 40 mins ago
marmotmarmot
124k6161305
124k6161305
add a comment |
add a comment |
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.
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
Welcome to TeX.SE!
– Kurt
1 hour ago
You should not use
minipage
inside TikZ pictures– JouleV
1 hour ago