2010-05-07 77 views
11

Tôi có một ma trận 3x12 Tôi muốn đầu vào LaTeX của tôi (với amsmath) tài liệu nhưng LaTeX dường như nghẹt thở khi ma trận được lớn hơn 3x10:sắp chữ một ma trận lớn trong LaTeX

\begin{equation} 
\textbf{e} = 
\begin{bmatrix} 
1&1&1&1&0&0&0&0&-1&-1&-1&-1\\ 
1&-1&0&0&1&1&-1&-1&0&0&1&-1\\ 
0&0&1&-1&1&-1&1&-1&1&-1&0&0 
\end{bmatrix} 
\end{equation} 

Các lỗi : Tab căn chỉnh bổ sung đã được thay đổi thành \ cr. cho tôi biết rằng tôi có nhiều hơn & hơn môi trường bmatrix có thể xử lý. Có cách nào thích hợp để xử lý việc này không? Nó cũng có vẻ là sự liên kết cho 1 và -1 là khác nhau, đó cũng là dự kiến ​​của bmatrix?

Trả lời

19

Từ các tài liệu amsmath (texdoc amsmath):

The amsmath package provides some environments for matrices beyond the basic array environment of LATEX. The pmatrix, bmatrix, Bmatrix, vmatrix and Vmatrix have (respectively) (), [ ], { }, | |, and ∥ ∥ delimiters built in. For naming consistency there is a matrix environment sans delimiters. This is not entirely redundant with the array environment; the matrix environments all use more economical horizontal spacing than the rather prodigal spacing of the array environment. Also, unlike the array environment, you don’t have to give column specifications for any of the matrix environments; by default you can have up to 10 centered columns. (If you need left or right alignment in a column or other special formats you must resort to array.)

ví dụ bmatrix mặc định là tối đa 10 cột.

Một chú thích thêm

More precisely: The maximum number of columns in a matrix is determined by the counter MaxMatrixCols (normal value = 10), which you can change if necessary using LATEX’s \setcounter or \addtocounter commands.

+0

Tuyệt vời! Đây chính xác là những gì tôi đang tìm kiếm, tôi không nhận ra ai có thể thay đổi cột tối đa. Đối với sự liên kết bên phải, tôi đã tìm thấy một giải pháp tốt mà vẫn cho phép lệnh bmatrix - tôi sẽ đăng nó trong giải pháp của riêng mình. – Hooked

+0

Tôi đã có chính xác cùng một vấn đề, câu hỏi hay! Tôi đã tính toán các bảng ký tự trong lý thuyết biểu diễn và thậm chí với các nhóm khá nhỏ, bạn sẽ dễ dàng kết thúc với các ma trận lớn. Cảm ơn bạn đã đăng/trả lời câu hỏi này! –

1

Câu trả lời của Scott là đúng, nhưng tôi đã từ học được bạn thể ghi đè lên sự liên kết. Lấy từ http://texblog.net/latex-archive/maths/matrix-align-left-right/

\makeatletter 
\renewcommand*\[email protected][1][c]{\hskip -\arraycolsep 
    \let\@ifnextchar\[email protected] 
    \array{*\[email protected] #1}} 
\makeatother 

Bây giờ cho phép các lệnh:

\begin{bmatrix}[r] .... 

có phải liên kết!

+0

Tôi tin rằng bạn cũng có thể sử dụng môi trường 'bmatrix *' từ gói 'mathtools' để đạt được điều tương tự, ít nhất theo wikibook: http://en.wikibooks.org/wiki/LaTeX/Mathematics# Matrices_and_arrays –

Các vấn đề liên quan