How to partition a pgfplotstable to use in multiple tikzpictures? (and duplicate a row)Pgfplotstable without...
How to reply this mail from potential PhD professor?
Is thermodynamics only applicable to systems in equilibrium?
Binary Numbers Magic Trick
How do I tell my manager that his code review comment is wrong?
Is it appropriate to refer to God as "It"?
Unexpected email from Yorkshire Bank
Printing a string when grep does not get a match
CRT Oscilloscope - part of the plot is missing
How do you center multiple equations that have multiple steps?
Stark VS Thanos
Airbnb - host wants to reduce rooms, can we get refund?
How to avoid grep command finding commented out strings in the source file?
Floor tile layout process?
Can a cyclic Amine form an Amide?
Is this homebrew race based on Draco Volans balanced?
Can I use 1000v rectifier diodes instead of 600v rectifier diodes?
Transfer over $10k
Is lying to get "gardening leave" fraud?
Pigeonhole Principle Problem
Map one pandas column using two dictionaries
How to efficiently calculate prefix sum of frequencies of characters in a string?
How did Arya manage to disguise herself?
Write to EXCEL from SQL DB using VBA script
How can I close a gap between my fence and my neighbor's that's on his side of the property line?
How to partition a pgfplotstable to use in multiple tikzpictures? (and duplicate a row)
Pgfplotstable without headings rowMultiple Multi columns with pgfplotstableDouble row heading in pgfplotstablePostprocess row with pgfplotstableRemove row in table (pgfplotstable)pgfplotstable manually declare row datapgfplotstable: use of /.add{}{}create header row and index column pgfplotstableColumn width and row height with pgfplotstablepgfplotstable: How to use 'pgfplotstablename'
I'm trying to create multiple plots from one pgfplotstable (data below). I can create the plots by manually editing the data (dataA and dataB below) but this is error-prone. Essentially, I need help:
partitioning the table based on columncat
duplicating the last row (exceptxminisxmaxfrom the previous row)
creating a loop to create multipletikzpictures [this I can probably figure out myself!]

documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataA}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataB}closedcycle;
end{axis}
end{tikzpicture}
end{document}
Regarding partitioning the data, I have been able to print the partitioned table, but then how can I use it as input for addplot?
newcommand{filtertable}[2]{
pgfplotstabletypeset[
columns/par1/.style={string type},
columns/par2/.style={string type},
row predicate/.code={%
pgfplotstablegetelem{##1}{cat}of{#1}
ifnumpgfplotsretval=#2relax
elsepgfplotstableuserowfalsefi}
]{#1}
}
filtertable{data}{1}
filtertable{data}{2}
Regarding duplicating the last row, the only relevant value in the last rows is xmin. According to the PGF manual with ybar interval "The last y value will be ignored." I have unsuccessfully tried to create the same plot without the additional row. Note the distance between xmin and xmax must not always equal 1.
tikz-pgf pgfplotstable tikz-datavisualization
add a comment |
I'm trying to create multiple plots from one pgfplotstable (data below). I can create the plots by manually editing the data (dataA and dataB below) but this is error-prone. Essentially, I need help:
partitioning the table based on columncat
duplicating the last row (exceptxminisxmaxfrom the previous row)
creating a loop to create multipletikzpictures [this I can probably figure out myself!]

documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataA}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataB}closedcycle;
end{axis}
end{tikzpicture}
end{document}
Regarding partitioning the data, I have been able to print the partitioned table, but then how can I use it as input for addplot?
newcommand{filtertable}[2]{
pgfplotstabletypeset[
columns/par1/.style={string type},
columns/par2/.style={string type},
row predicate/.code={%
pgfplotstablegetelem{##1}{cat}of{#1}
ifnumpgfplotsretval=#2relax
elsepgfplotstableuserowfalsefi}
]{#1}
}
filtertable{data}{1}
filtertable{data}{2}
Regarding duplicating the last row, the only relevant value in the last rows is xmin. According to the PGF manual with ybar interval "The last y value will be ignored." I have unsuccessfully tried to create the same plot without the additional row. Note the distance between xmin and xmax must not always equal 1.
tikz-pgf pgfplotstable tikz-datavisualization
add a comment |
I'm trying to create multiple plots from one pgfplotstable (data below). I can create the plots by manually editing the data (dataA and dataB below) but this is error-prone. Essentially, I need help:
partitioning the table based on columncat
duplicating the last row (exceptxminisxmaxfrom the previous row)
creating a loop to create multipletikzpictures [this I can probably figure out myself!]

documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataA}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataB}closedcycle;
end{axis}
end{tikzpicture}
end{document}
Regarding partitioning the data, I have been able to print the partitioned table, but then how can I use it as input for addplot?
newcommand{filtertable}[2]{
pgfplotstabletypeset[
columns/par1/.style={string type},
columns/par2/.style={string type},
row predicate/.code={%
pgfplotstablegetelem{##1}{cat}of{#1}
ifnumpgfplotsretval=#2relax
elsepgfplotstableuserowfalsefi}
]{#1}
}
filtertable{data}{1}
filtertable{data}{2}
Regarding duplicating the last row, the only relevant value in the last rows is xmin. According to the PGF manual with ybar interval "The last y value will be ignored." I have unsuccessfully tried to create the same plot without the additional row. Note the distance between xmin and xmax must not always equal 1.
tikz-pgf pgfplotstable tikz-datavisualization
I'm trying to create multiple plots from one pgfplotstable (data below). I can create the plots by manually editing the data (dataA and dataB below) but this is error-prone. Essentially, I need help:
partitioning the table based on columncat
duplicating the last row (exceptxminisxmaxfrom the previous row)
creating a loop to create multipletikzpictures [this I can probably figure out myself!]

documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataA}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval] table[x=xmin,y=y] {dataB}closedcycle;
end{axis}
end{tikzpicture}
end{document}
Regarding partitioning the data, I have been able to print the partitioned table, but then how can I use it as input for addplot?
newcommand{filtertable}[2]{
pgfplotstabletypeset[
columns/par1/.style={string type},
columns/par2/.style={string type},
row predicate/.code={%
pgfplotstablegetelem{##1}{cat}of{#1}
ifnumpgfplotsretval=#2relax
elsepgfplotstableuserowfalsefi}
]{#1}
}
filtertable{data}{1}
filtertable{data}{2}
Regarding duplicating the last row, the only relevant value in the last rows is xmin. According to the PGF manual with ybar interval "The last y value will be ignored." I have unsuccessfully tried to create the same plot without the additional row. Note the distance between xmin and xmax must not always equal 1.
tikz-pgf pgfplotstable tikz-datavisualization
tikz-pgf pgfplotstable tikz-datavisualization
edited 1 hour ago
Frank Seifert
asked 2 hours ago
Frank SeifertFrank Seifert
2,48773252
2,48773252
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
One way is to install a filter like
unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}
MWE:
documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==2 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
end{document}

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
});
}
});
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%2f488292%2fhow-to-partition-a-pgfplotstable-to-use-in-multiple-tikzpictures-and-duplicate%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
One way is to install a filter like
unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}
MWE:
documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==2 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
end{document}

add a comment |
One way is to install a filter like
unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}
MWE:
documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==2 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
end{document}

add a comment |
One way is to install a filter like
unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}
MWE:
documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==2 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
end{document}

One way is to install a filter like
unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}
MWE:
documentclass{article}
usepackage{pgfplotstable}
pgfplotsset{compat=1.15}
begin{document}
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
}data
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.3 1 no
1.5 1 2 yes 0.6 1 no
2.5 2 3 yes 0.7 1 no
2.5 3 3 yes 0.7 1 no
}dataA
pgfplotstableread{
x xmin xmax par1 y cat par2
0.5 0 1 yes 0.4 2 no
1.5 1 2 yes 0.5 2 no
2.5 2 3 yes 0.9 2 no
2.5 3 3 yes 0.9 2 no
}dataB
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==1 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
begin{tikzpicture}
begin{axis}[ybar, ymin=0, ymax=1, xmin=-0.5, xmax=3.5]
addplot[black, ybar interval,unbounded coords=discard,
x filter/.expression={thisrow{cat}==2 ? x : nan}] table[x=xmin,y=y] {data}closedcycle;
end{axis}
end{tikzpicture}
end{document}

answered 2 hours ago
marmotmarmot
122k6160300
122k6160300
add a comment |
add a comment |
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%2f488292%2fhow-to-partition-a-pgfplotstable-to-use-in-multiple-tikzpictures-and-duplicate%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