csvsimple vs. conditional row coloring
I've a CSV file what I want process with csvsimple. My desire is to color some rows based on a conditional (one specified column has bigger value). Here is an MWE:
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
1,3,2,1
end{filecontents*}
begin{tabular}{*{4}{c}}
csvreader[
head to column names,
before line={ifnumd>1rowcolor{gray}fi},
late after line={\}
]{mwe.csv}{}{
a&b&c&d
}
end{tabular}
end{document}
In this case I gave an error message:
! Misplaced noalign.
<recently read> noalign
l.18 }
How can I solve it?
conditionals csv csvsimple rowcolor
add a comment |
I've a CSV file what I want process with csvsimple. My desire is to color some rows based on a conditional (one specified column has bigger value). Here is an MWE:
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
1,3,2,1
end{filecontents*}
begin{tabular}{*{4}{c}}
csvreader[
head to column names,
before line={ifnumd>1rowcolor{gray}fi},
late after line={\}
]{mwe.csv}{}{
a&b&c&d
}
end{tabular}
end{document}
In this case I gave an error message:
! Misplaced noalign.
<recently read> noalign
l.18 }
How can I solve it?
conditionals csv csvsimple rowcolor
add a comment |
I've a CSV file what I want process with csvsimple. My desire is to color some rows based on a conditional (one specified column has bigger value). Here is an MWE:
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
1,3,2,1
end{filecontents*}
begin{tabular}{*{4}{c}}
csvreader[
head to column names,
before line={ifnumd>1rowcolor{gray}fi},
late after line={\}
]{mwe.csv}{}{
a&b&c&d
}
end{tabular}
end{document}
In this case I gave an error message:
! Misplaced noalign.
<recently read> noalign
l.18 }
How can I solve it?
conditionals csv csvsimple rowcolor
I've a CSV file what I want process with csvsimple. My desire is to color some rows based on a conditional (one specified column has bigger value). Here is an MWE:
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
1,3,2,1
end{filecontents*}
begin{tabular}{*{4}{c}}
csvreader[
head to column names,
before line={ifnumd>1rowcolor{gray}fi},
late after line={\}
]{mwe.csv}{}{
a&b&c&d
}
end{tabular}
end{document}
In this case I gave an error message:
! Misplaced noalign.
<recently read> noalign
l.18 }
How can I solve it?
conditionals csv csvsimple rowcolor
conditionals csv csvsimple rowcolor
asked Jan 2 at 7:55
uzsoltuzsolt
911714
911714
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
Your error stems from rowcolor
not being at the very beginning of the row. You can fix that by adding an additional \
at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:
documentclass[12pt]{article}
usepackage{csvsimple}
usepackage[table]{xcolor}
usepackage{filecontents}
begin{filecontents*}{jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
end{filecontents*}
begin{document}
begin{tabular}{*{4}{c}}
csvreader[head to column names,
full filter=ifnumgreater{d}{1}
{\rowcolor{gray} csvfilteraccept}
{\ csvfilteraccept}
]{jobname.csv}{}{csvlinetotablerow}%
end{tabular}
end{document}
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
add a comment |
Try this solution. It adds a line break after each row.
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
5,3,9,1
7,8,2,9
5,3,9,1
5,3,9,1
7,8,2,9
end{filecontents*}
csvreader[tabular=cccc,
head to column names,
before line={ifnumd>1\rowcolor{gray}else\fi}
]{mwe.csv}{}{
a&b&c&d
}
end{document}
If you don't else\ then you will have this result:
There are empty lines. Compare it without thebefore line={ifnumd>1\rowcolor{gray}else\fi}
option!
– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the optiontabular=cccc,
(it adds an additional line break at the end) and put the wholecsvreader
-statement inside of the tabular-environment.
– DG'
Jan 2 at 11:04
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%2f468208%2fcsvsimple-vs-conditional-row-coloring%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
Your error stems from rowcolor
not being at the very beginning of the row. You can fix that by adding an additional \
at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:
documentclass[12pt]{article}
usepackage{csvsimple}
usepackage[table]{xcolor}
usepackage{filecontents}
begin{filecontents*}{jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
end{filecontents*}
begin{document}
begin{tabular}{*{4}{c}}
csvreader[head to column names,
full filter=ifnumgreater{d}{1}
{\rowcolor{gray} csvfilteraccept}
{\ csvfilteraccept}
]{jobname.csv}{}{csvlinetotablerow}%
end{tabular}
end{document}
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
add a comment |
Your error stems from rowcolor
not being at the very beginning of the row. You can fix that by adding an additional \
at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:
documentclass[12pt]{article}
usepackage{csvsimple}
usepackage[table]{xcolor}
usepackage{filecontents}
begin{filecontents*}{jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
end{filecontents*}
begin{document}
begin{tabular}{*{4}{c}}
csvreader[head to column names,
full filter=ifnumgreater{d}{1}
{\rowcolor{gray} csvfilteraccept}
{\ csvfilteraccept}
]{jobname.csv}{}{csvlinetotablerow}%
end{tabular}
end{document}
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
add a comment |
Your error stems from rowcolor
not being at the very beginning of the row. You can fix that by adding an additional \
at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:
documentclass[12pt]{article}
usepackage{csvsimple}
usepackage[table]{xcolor}
usepackage{filecontents}
begin{filecontents*}{jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
end{filecontents*}
begin{document}
begin{tabular}{*{4}{c}}
csvreader[head to column names,
full filter=ifnumgreater{d}{1}
{\rowcolor{gray} csvfilteraccept}
{\ csvfilteraccept}
]{jobname.csv}{}{csvlinetotablerow}%
end{tabular}
end{document}
Your error stems from rowcolor
not being at the very beginning of the row. You can fix that by adding an additional \
at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:
documentclass[12pt]{article}
usepackage{csvsimple}
usepackage[table]{xcolor}
usepackage{filecontents}
begin{filecontents*}{jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
end{filecontents*}
begin{document}
begin{tabular}{*{4}{c}}
csvreader[head to column names,
full filter=ifnumgreater{d}{1}
{\rowcolor{gray} csvfilteraccept}
{\ csvfilteraccept}
]{jobname.csv}{}{csvlinetotablerow}%
end{tabular}
end{document}
edited Jan 2 at 11:09
answered Jan 2 at 9:00
DG'DG'
9,41011741
9,41011741
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
add a comment |
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
It doesn't work well if you've a third line in CSV ("1,1,2,2") or the second line matches too.
– uzsolt
Jan 2 at 9:34
1
1
@uzsolt fixed it
– DG'
Jan 2 at 10:56
@uzsolt fixed it
– DG'
Jan 2 at 10:56
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
Thank you, it works well!
– uzsolt
Jan 2 at 11:21
add a comment |
Try this solution. It adds a line break after each row.
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
5,3,9,1
7,8,2,9
5,3,9,1
5,3,9,1
7,8,2,9
end{filecontents*}
csvreader[tabular=cccc,
head to column names,
before line={ifnumd>1\rowcolor{gray}else\fi}
]{mwe.csv}{}{
a&b&c&d
}
end{document}
If you don't else\ then you will have this result:
There are empty lines. Compare it without thebefore line={ifnumd>1\rowcolor{gray}else\fi}
option!
– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the optiontabular=cccc,
(it adds an additional line break at the end) and put the wholecsvreader
-statement inside of the tabular-environment.
– DG'
Jan 2 at 11:04
add a comment |
Try this solution. It adds a line break after each row.
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
5,3,9,1
7,8,2,9
5,3,9,1
5,3,9,1
7,8,2,9
end{filecontents*}
csvreader[tabular=cccc,
head to column names,
before line={ifnumd>1\rowcolor{gray}else\fi}
]{mwe.csv}{}{
a&b&c&d
}
end{document}
If you don't else\ then you will have this result:
There are empty lines. Compare it without thebefore line={ifnumd>1\rowcolor{gray}else\fi}
option!
– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the optiontabular=cccc,
(it adds an additional line break at the end) and put the wholecsvreader
-statement inside of the tabular-environment.
– DG'
Jan 2 at 11:04
add a comment |
Try this solution. It adds a line break after each row.
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
5,3,9,1
7,8,2,9
5,3,9,1
5,3,9,1
7,8,2,9
end{filecontents*}
csvreader[tabular=cccc,
head to column names,
before line={ifnumd>1\rowcolor{gray}else\fi}
]{mwe.csv}{}{
a&b&c&d
}
end{document}
If you don't else\ then you will have this result:
Try this solution. It adds a line break after each row.
documentclass[12pt]{article}
usepackage{filecontents}
usepackage{csvsimple}
usepackage[table]{xcolor}
begin{document}
begin{filecontents*}{mwe.csv}
a,b,c,d
1,1,2,2
5,3,9,1
7,8,2,9
5,3,9,1
5,3,9,1
7,8,2,9
end{filecontents*}
csvreader[tabular=cccc,
head to column names,
before line={ifnumd>1\rowcolor{gray}else\fi}
]{mwe.csv}{}{
a&b&c&d
}
end{document}
If you don't else\ then you will have this result:
edited Jan 2 at 9:47
answered Jan 2 at 9:33
CompiiiCompiii
112
112
There are empty lines. Compare it without thebefore line={ifnumd>1\rowcolor{gray}else\fi}
option!
– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the optiontabular=cccc,
(it adds an additional line break at the end) and put the wholecsvreader
-statement inside of the tabular-environment.
– DG'
Jan 2 at 11:04
add a comment |
There are empty lines. Compare it without thebefore line={ifnumd>1\rowcolor{gray}else\fi}
option!
– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the optiontabular=cccc,
(it adds an additional line break at the end) and put the wholecsvreader
-statement inside of the tabular-environment.
– DG'
Jan 2 at 11:04
There are empty lines. Compare it without the
before line={ifnumd>1\rowcolor{gray}else\fi}
option!– uzsolt
Jan 2 at 9:45
There are empty lines. Compare it without the
before line={ifnumd>1\rowcolor{gray}else\fi}
option!– uzsolt
Jan 2 at 9:45
I want equal height :)
– uzsolt
Jan 2 at 9:49
I want equal height :)
– uzsolt
Jan 2 at 9:49
@Compiii Your solution works great, if you omit the option
tabular=cccc,
(it adds an additional line break at the end) and put the whole csvreader
-statement inside of the tabular-environment.– DG'
Jan 2 at 11:04
@Compiii Your solution works great, if you omit the option
tabular=cccc,
(it adds an additional line break at the end) and put the whole csvreader
-statement inside of the tabular-environment.– DG'
Jan 2 at 11:04
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%2f468208%2fcsvsimple-vs-conditional-row-coloring%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