Table with merged cells, multi-index and text wrap
I'd like to have a table that looks like this. Here's a link to open the image in another tab.
What matters to me is the structure. The formatting is just to show what I'd like to stand out from the rest in some way.
How do I:
- Make sure text is wrapped when the data has over a specific length.
- Use a multicolumn for the bottom right cells, as per the image?
Here's what I have:
documentclass[11pt]{article}
usepackage{multirow}
begin{document}
% Text data placeholder. May be long enough that it needs to be wrapped.
begin{table}[ht]
begin{center}
begin{tabular}{cccc}
hline
multirow{2}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{2}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{6}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.3 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.4 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.6 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
end{tabular}
end{center}
end{table}
end{document}
Better formatting is welcome. Feel free to add your own touch.
tables
add a comment |
I'd like to have a table that looks like this. Here's a link to open the image in another tab.
What matters to me is the structure. The formatting is just to show what I'd like to stand out from the rest in some way.
How do I:
- Make sure text is wrapped when the data has over a specific length.
- Use a multicolumn for the bottom right cells, as per the image?
Here's what I have:
documentclass[11pt]{article}
usepackage{multirow}
begin{document}
% Text data placeholder. May be long enough that it needs to be wrapped.
begin{table}[ht]
begin{center}
begin{tabular}{cccc}
hline
multirow{2}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{2}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{6}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.3 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.4 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.6 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
end{tabular}
end{center}
end{table}
end{document}
Better formatting is welcome. Feel free to add your own touch.
tables
2
Welcome to TeX.SE! I thinkmulticolumn
is what you want. Anyway, please add a minimal working example.
– JouleV
Mar 20 at 13:06
1
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@whoami: I have removed thepgfplotstable
andthreeparttable
tags from your question as you do not use the corresponding packages in your MWE.
– leandriis
Mar 20 at 15:34
add a comment |
I'd like to have a table that looks like this. Here's a link to open the image in another tab.
What matters to me is the structure. The formatting is just to show what I'd like to stand out from the rest in some way.
How do I:
- Make sure text is wrapped when the data has over a specific length.
- Use a multicolumn for the bottom right cells, as per the image?
Here's what I have:
documentclass[11pt]{article}
usepackage{multirow}
begin{document}
% Text data placeholder. May be long enough that it needs to be wrapped.
begin{table}[ht]
begin{center}
begin{tabular}{cccc}
hline
multirow{2}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{2}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{6}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.3 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.4 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.6 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
end{tabular}
end{center}
end{table}
end{document}
Better formatting is welcome. Feel free to add your own touch.
tables
I'd like to have a table that looks like this. Here's a link to open the image in another tab.
What matters to me is the structure. The formatting is just to show what I'd like to stand out from the rest in some way.
How do I:
- Make sure text is wrapped when the data has over a specific length.
- Use a multicolumn for the bottom right cells, as per the image?
Here's what I have:
documentclass[11pt]{article}
usepackage{multirow}
begin{document}
% Text data placeholder. May be long enough that it needs to be wrapped.
begin{table}[ht]
begin{center}
begin{tabular}{cccc}
hline
multirow{2}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{2}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
multirow{6}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.3 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.4 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.5 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.6 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
hline
end{tabular}
end{center}
end{table}
end{document}
Better formatting is welcome. Feel free to add your own touch.
tables
tables
edited Mar 20 at 15:34
leandriis
10.9k1732
10.9k1732
asked Mar 20 at 13:00
whoamiwhoami
344
344
2
Welcome to TeX.SE! I thinkmulticolumn
is what you want. Anyway, please add a minimal working example.
– JouleV
Mar 20 at 13:06
1
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@whoami: I have removed thepgfplotstable
andthreeparttable
tags from your question as you do not use the corresponding packages in your MWE.
– leandriis
Mar 20 at 15:34
add a comment |
2
Welcome to TeX.SE! I thinkmulticolumn
is what you want. Anyway, please add a minimal working example.
– JouleV
Mar 20 at 13:06
1
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@whoami: I have removed thepgfplotstable
andthreeparttable
tags from your question as you do not use the corresponding packages in your MWE.
– leandriis
Mar 20 at 15:34
2
2
Welcome to TeX.SE! I think
multicolumn
is what you want. Anyway, please add a minimal working example.– JouleV
Mar 20 at 13:06
Welcome to TeX.SE! I think
multicolumn
is what you want. Anyway, please add a minimal working example.– JouleV
Mar 20 at 13:06
1
1
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@whoami: I have removed the
pgfplotstable
and threeparttable
tags from your question as you do not use the corresponding packages in your MWE.– leandriis
Mar 20 at 15:34
@whoami: I have removed the
pgfplotstable
and threeparttable
tags from your question as you do not use the corresponding packages in your MWE.– leandriis
Mar 20 at 15:34
add a comment |
1 Answer
1
active
oldest
votes
The following includes:
tabularx
forX
type columns and a table that fits the textwidth
multicolumn
for the cells spanning 2 columns- adjusted values of
multirow
to vertically center the text in the first column - replaced
center
environment bycentering
as the former adds additional white space around the table
used horizontal lines from the
booktabs
package for improved spacing.
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
&Inner index 3.3 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Here, I have also used multirow
for the contents of the second column:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & multirow{3}{*}{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & multirow{3}{*}{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & multirow{3}{*}{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& multirow{3}{*}{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
In oder to vertically center the text in the second column, you could also use the makecell
package in combination with vertically centered X
type columns as shown in the following MWE:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
usepackage{makecell}
renewcommand{tabularxcolumn}[1]{m{#1}}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & makecell[cc]{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & makecell[cc]{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & makecell[cc]{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& makecell[cc]{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column usemultirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument ofmultirow
in the first column accordingly.
– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
|
show 3 more comments
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%2f480479%2ftable-with-merged-cells-multi-index-and-text-wrap%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
The following includes:
tabularx
forX
type columns and a table that fits the textwidth
multicolumn
for the cells spanning 2 columns- adjusted values of
multirow
to vertically center the text in the first column - replaced
center
environment bycentering
as the former adds additional white space around the table
used horizontal lines from the
booktabs
package for improved spacing.
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
&Inner index 3.3 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Here, I have also used multirow
for the contents of the second column:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & multirow{3}{*}{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & multirow{3}{*}{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & multirow{3}{*}{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& multirow{3}{*}{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
In oder to vertically center the text in the second column, you could also use the makecell
package in combination with vertically centered X
type columns as shown in the following MWE:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
usepackage{makecell}
renewcommand{tabularxcolumn}[1]{m{#1}}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & makecell[cc]{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & makecell[cc]{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & makecell[cc]{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& makecell[cc]{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column usemultirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument ofmultirow
in the first column accordingly.
– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
|
show 3 more comments
The following includes:
tabularx
forX
type columns and a table that fits the textwidth
multicolumn
for the cells spanning 2 columns- adjusted values of
multirow
to vertically center the text in the first column - replaced
center
environment bycentering
as the former adds additional white space around the table
used horizontal lines from the
booktabs
package for improved spacing.
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
&Inner index 3.3 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Here, I have also used multirow
for the contents of the second column:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & multirow{3}{*}{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & multirow{3}{*}{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & multirow{3}{*}{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& multirow{3}{*}{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
In oder to vertically center the text in the second column, you could also use the makecell
package in combination with vertically centered X
type columns as shown in the following MWE:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
usepackage{makecell}
renewcommand{tabularxcolumn}[1]{m{#1}}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & makecell[cc]{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & makecell[cc]{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & makecell[cc]{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& makecell[cc]{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column usemultirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument ofmultirow
in the first column accordingly.
– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
|
show 3 more comments
The following includes:
tabularx
forX
type columns and a table that fits the textwidth
multicolumn
for the cells spanning 2 columns- adjusted values of
multirow
to vertically center the text in the first column - replaced
center
environment bycentering
as the former adds additional white space around the table
used horizontal lines from the
booktabs
package for improved spacing.
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
&Inner index 3.3 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Here, I have also used multirow
for the contents of the second column:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & multirow{3}{*}{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & multirow{3}{*}{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & multirow{3}{*}{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& multirow{3}{*}{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
In oder to vertically center the text in the second column, you could also use the makecell
package in combination with vertically centered X
type columns as shown in the following MWE:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
usepackage{makecell}
renewcommand{tabularxcolumn}[1]{m{#1}}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & makecell[cc]{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & makecell[cc]{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & makecell[cc]{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& makecell[cc]{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
The following includes:
tabularx
forX
type columns and a table that fits the textwidth
multicolumn
for the cells spanning 2 columns- adjusted values of
multirow
to vertically center the text in the first column - replaced
center
environment bycentering
as the former adds additional white space around the table
used horizontal lines from the
booktabs
package for improved spacing.
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & Inner index 1.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 1.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & Inner index 2.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& Inner index 2.2 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & Inner index 3.1 & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
&Inner index 3.2 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
&Inner index 3.3 & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
Here, I have also used multirow
for the contents of the second column:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & multirow{3}{*}{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & multirow{3}{*}{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & multirow{3}{*}{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& multirow{3}{*}{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& multirow{3}{*}{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
In oder to vertically center the text in the second column, you could also use the makecell
package in combination with vertically centered X
type columns as shown in the following MWE:
documentclass[11pt]{article}
usepackage{multirow}
usepackage{geometry}
usepackage{tabularx}
usepackage{booktabs}
usepackage{ragged2e}
usepackage{makecell}
renewcommand{tabularxcolumn}[1]{m{#1}}
begin{document}
begin{table}[ht]
centering
begin{tabularx}{textwidth}{cc>{RaggedRightarraybackslash}X>{RaggedRightarraybackslash}X}
toprule
multirow{6}{*}{Outer index 1} & makecell[cc]{Inner index 1.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 1.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{6}{*}{Outer index 2} & makecell[cc]{Inner index 2.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 2.2} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
midrule
multirow{9}{*}{Outer index 3} & makecell[cc]{Inner index 3.1} & Text data placeholder. May be long enough that it needs to be wrapped. & Text data placeholder. May be long enough that it needs to be wrapped.\
& makecell[cc]{Inner index 3.2} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
& makecell[cc]{Inner index 3.3} & multicolumn{2}{>{hsize=dimexpr2hsize+2tabcolsep+arrayrulewidthrelaxRaggedRightarraybackslash}X}{ Text data placeholder. May be long enough that it needs to be wrapped. Text data placeholder. May be long enough that it needs to be wrapped.}\
bottomrule
end{tabularx}
end{table}
end{document}
edited Mar 20 at 19:05
answered Mar 20 at 15:04
leandriisleandriis
10.9k1732
10.9k1732
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column usemultirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument ofmultirow
in the first column accordingly.
– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
|
show 3 more comments
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column usemultirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument ofmultirow
in the first column accordingly.
– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
Thanks! Is there a way to vertically center the first two columns?
– whoami
Mar 20 at 16:29
For the contents of the second column use
multirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument of multirow
in the first column accordingly.– leandriis
Mar 20 at 16:32
For the contents of the second column use
multirow{3}{*}{<your text>}
. If you add more rows you might need to adjust the number in the first argument of multirow
in the first column accordingly.– leandriis
Mar 20 at 16:32
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
Isn't that what is already being done? They aren't centered for me.
– whoami
Mar 20 at 17:51
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
@whoami: I have added a second MWE showing how to vertically center the contents of the second column. I have also added images of the output I obtain from the two different examples.
– leandriis
Mar 20 at 18:37
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
Thanks. But won't this potentially fail to be centered when the text is different? Because the text I'm using is different and I don't want to rely on my very bad eyes to assess what value centers the indices.
– whoami
Mar 20 at 19:01
|
show 3 more comments
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%2f480479%2ftable-with-merged-cells-multi-index-and-text-wrap%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
2
Welcome to TeX.SE! I think
multicolumn
is what you want. Anyway, please add a minimal working example.– JouleV
Mar 20 at 13:06
1
Welcome to TeX.SX! Could you please add a minimal working example (MWE) of what you have acmoplished so far to illustrate your problem?
– leandriis
Mar 20 at 13:06
@whoami: Please add the code directly to your question (by using the edit button). Content from external sites might be removed in the future which makes a question that relies on externally shown code unusable for future readers.
– leandriis
Mar 20 at 14:38
@leandriis My code wasn't a minimal example yet, that's why I didn't add it to the question. I now have a minimal example and I'm about to add it. Thank you for your guideance.
– whoami
Mar 20 at 14:39
@whoami: I have removed the
pgfplotstable
andthreeparttable
tags from your question as you do not use the corresponding packages in your MWE.– leandriis
Mar 20 at 15:34