In einer Matrix habe ich große Einträge, daneben steht eine Matrix mit kleineren Elementen.

\documentclass{article}
\usepackage{amsmath}
\newcommand*{\dx}{\,\mathrm{dx}}
\begin{document}
\[
  \begin{pmatrix}
    \int\limits_0^\infty f_1(x)\dx \\
    \vdots \\
    \int\limits_0^\infty f_n(x)\dx \\
  \end{pmatrix}
  \begin{pmatrix}
    x_1 \\
    \vdots \\
    x_n
  \end{pmatrix} = \ldots
\]
\end{document}

Matrizen verschiedener Größe

Nun möchte ich, dass die Elemente auf gleicher Höhe stehen. Wie kriege ich das hin?

gefragt 09 Jan '14, 10:35

Student's gravatar image

Student
4702578103
Akzeptiert: 96%


Wenn man Elemente unterschiedlicher Höhe bzw. Breite aneinander ausrichten möchte, kann man Befehle verwenden, die unsichtbar jeweils den Platz in Höhe bzw. Breite reservieren:

  • \vphantom{Ausdruck} reserviert die Höhe eines Ausdrucks (v für vertikal)
  • \hphantom{Ausdruck} reserviert die Breite eines Ausdrucks (h für horizontal)
  • \phantom{Ausdruck} reserviert den ganzen Platz, den der Ausdruck belegen würde, ohne ihn auszugeben

Man wählt dann jeweils das größte Element. Man kann es sich auch in ein Makro packen, wenn man es nicht mehrfach schreiben möchte.

Hier im Beispiel reserviere ich unsichtbar die Höhe des Integralausdrucks durch Einfügen von \vphantom{\int\limits_0^\infty}:

\documentclass{article}
\usepackage{amsmath}
\newcommand*{\dx}{\,\mathrm{dx}}
\begin{document}
\[
  \begin{pmatrix}
    \int\limits_0^\infty f_1(x)\dx \\
    \vdots \\
    \int\limits_0^\infty f_n(x)\dx \\
  \end{pmatrix}
  \begin{pmatrix}
    \vphantom{\int\limits_0^\infty}x_1 \\
    \vdots \\
    \vphantom{\int\limits_0^\infty}x_n
  \end{pmatrix} = \ldots
\]
\end{document}

Matrizen mit Ausrichtung

Permanenter link

beantwortet 09 Jan '14, 10:43

Student's gravatar image

Student
4702578103

Hier ist noch eine Möglichkeit mit einer anderen Herangehensweise statt Phantom-Ausgleich: alles steht in der gleichen Matrix, so dass es ganz natürlich korrekt ausgerichtet ist, und nur die Klammern werden eingefügt. Das mache ich hier mit dem bigdelim-Paket, so wie es in der Antwort hierauf gemacht wurde: Wie kann ich Matrizen aneinander ausrichten und beschriften?

\documentclass{article}
\usepackage{amsmath}
\usepackage{bigdelim}
\usepackage{multirow}
\makeatletter
\renewcommand*{\env@matrix}[1][*\c@MaxMatrixCols c]{%
  \hskip -\arraycolsep
  \let\@ifnextchar\new@ifnextchar
  \array{#1}}
\makeatother
\newcommand*{\dx}{\,\mathrm{dx}}
\begin{document}
\[
  \begin{matrix}[lc@{}ccc@{}c]
    \ldelim({5}{0pt} & \int\limits_0^\infty f_1(x)\dx & \rdelim){5}{0pt} &
        \ldelim({5}{0pt} & x_1 & \rdelim){5}{1em}\\
    & \vdots & & & \vdots \\
    & \int\limits_0^\infty f_n(x)\dx & & & x_n
  \end{matrix} = \ldots
\]
\end{document}

Matrix mit Ausrichtung

Das ist noch nicht perfekt, soll aber mal das Prinzip zeigen. Die Klammern müsste man noch besser an die Zellenhöhe bzw. Matrixhhöhe anpassen, und die \env@matrix-Redefinition habe ich gemacht, um den Platz links und rechts der Klammern auszugleichen, der zunächst nicht optimal ist - kann man auch verbessern.

Permanenter link

beantwortet 09 Jan '14, 11:00

Student's gravatar image

Student
4702578103

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×108
×57
×27
×27
×20

Frage gestellt: 09 Jan '14, 10:35

Frage wurde angeschaut: 3,905 Mal

Zuletzt aktualisiert: 09 Jan '14, 11:00