Таблицы в MathML

Таблицы в MathML являются мощным инструментом для представления математических данных и формул в структурированном виде. Таблицы также используются для отображения матриц и систем уравнений.

Создание таблицы

Таблицы в MathML строятся аналогично таблицам в HTML. Сама таблица создаётся с помощью элемента <mtable>, внутри которого должны быть строки <mtr> и ячейки <mtd>. Например, для таблицы с одной строкой и двумя ячейками структура будет следующая.

<math display="block"> <mtable> <mtr> <mtd><mi>A</mi></mtd> <mtd><mi>B</mi></mtd> </mtr> </mtable> </math>

Таблица с двумя строками и по одной ячейке в каждой строке имеет следующую структуру.

<math display="block"> <mtable> <mtr> <mtd><mi>A</mi></mtd> </mtr> <mtr> <mtd><mi>B</mi></mtd> </mtr> </mtable> </math>

Матрицы

Для представления матрицы создаётся таблица, содержащая желаемое количество строк и ячеек. Сама матрица обозначается с помощью круглых или квадратных скобок, они делаются через элемент <mo>. Чтобы скобки автоматически растягивались на всю высоту матрицы, необходимо воспользоваться элементом <mrow>, который будет объединять скобки и таблицу.

<mrow>
  <mo fence="true" form="prefix">[</mo>
  <mtable>…</mtable>
  <mo fence="true" form="postfix">]</mo>
</mrow>

В примере 1 показано отображение матрицы с квадратными скобками и четырьмя элементами.

Пример 1. Создание матрицы

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <math display="block"> <mrow> <mo fence="true" form="prefix">[</mo> <mtable> <mtr> <mtd> <msub> <mi>a</mi><mn>11</mn> </msub> </mtd> <mtd> <msub> <mi>a</mi><mn>12</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>a</mi><mn>21</mn> </msub> </mtd> <mtd> <msub> <mi>a</mi><mn>22</mn> </msub> </mtd> </mtr> </mtable> <mo fence="true" form="postfix">]</mo> </mrow> </math> </body> </html>

Если для отображения матриц требуются круглые скобки, достаточно написать их внутри элемента <mo>.

<mrow>
  <mo fence="true" form="prefix">(</mo>
  <mtable>…</mtable>
  <mo fence="true" form="postfix">)</mo>
</mrow>

Системы уравнений

Система уравнений представляет собой несколько математических выражений, объединённых фигурной скобкой слева.

Для создания такой системы создаём таблицу, число строк в которой совпадает с числом уравнений. К примеру, для трёх уравнений будет такая таблица.

<mtable>
  <mtr>
    <mtd>Первое уравнение</mtd>
  </mtr>
  <mtr>
    <mtd>Второе уравнение</mtd>
  </mtr>
  <mtr>
    <mtd>Третье уравнение</mtd>
  </mtr>
</mtable>

Чтобы добавить к уравнениям фигурную скобку, воспользуемся приёмом, показанным в примере 1. А именно, объединяем фигурную скобку и таблицу в одну группу с помощью элемента <mrow>.

<mrow>
  <mo fence="true" form="prefix">{</mo>
  <mtable>…</mtable>
</mrow>

В примере 2 показано написание системы уравнений с помощью таблицы MathML.

Пример 2. Система из двух уравнений

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <p>Решите систему уравнений:</p> <math display="block"> <mrow> <mo fence="true" form="prefix">{</mo> <mtable> <mtr> <mtd> <mn>2</mn><mi>x</mi> <mo>−</mo><mi>y</mi> <mo>=</mo><mn>5</mn> <mtext>,</mtext> </mtd> </mtr> <mtr> <mtd> <mn>3</mn><mi>x</mi> <mo>−</mo><mi>y</mi> <mo>=</mo><mn>7</mn> <mtext>.</mtext> </mtd> </mtr> </mtable> </mrow> </math> </body> </html>

Обратите внимание, что уравнения разделяются запятыми, а в последнем уравнении ставится точка. И запятая и точка не являются частью математического выражения, а относятся к текстовому предложению. Поэтому для их обозначения используется текстовый элемент <mtext>.

Итоги

  • Таблицы в MathML создаются с помощью элемента <mtable>.
  • Внутри каждой таблицы <mtable> должна быть хотя бы одна строка <mtr> и одна ячейка <mtd>.
  • Для создания матриц и систем уравнений таблица и скобки объединяются в группу с помощью элемента <mrow>.

Перейти к заданиям

Автор: Влад Мержевич
Последнее изменение: 26.04.2024

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <p>Укажите значение параметра <var>R</var>, при котором система уравнений</p> <math display="block"> <mrow> <mo fence="true" form="prefix">{</mo> <mtable> <mtr> <mtd> <mn>5</mn><mi>x</mi> <mo>+</mo> <mn>8</mn><mi>y</mi> <mo>=</mo><mn>2</mn> <mtext>,</mtext> </mtd> </mtr> <mtr> <mtd> <mi>R</mi><mi>x</mi> <mo>−</mo> <mn>9</mn><mi>y</mi> <mo>=</mo><mn>7</mn> </mtd> </mtr> </mtable> </mrow> </math> <p>не имеет решений.</p> </body> </html>

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <p>Матрица вращения вокруг оси <var>x</var>:</p> <math display="block"> <msub> <mi>M</mi> <mi>x</mi> </msub> <mo fence="true" form="prefix" stretchy="false">(</mo> <mi>𝛼</mi> <mo fence="true" form="postfix" stretchy="false">)</mo> <mo>=</mo> <mrow> <mo fence="true" form="prefix">(</mo> <mtable> <mtr> <mtd> <mi>cos</mi> <mi>𝛼</mi> </mtd> <mtd> <mo>−</mo> <mi>sin</mi> <mi>𝛼</mi> </mtd> </mtr> <mtr> <mtd> <mi>sin</mi> <mi>𝛼</mi> </mtd> <mtd> <mi>cos</mi> <mi>𝛼</mi> </mtd> </mtr> </mtable> <mo fence="true" form="postfix">)</mo> </mrow> <mtext>.</mtext> </math> </body> </html>

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <p>Решите систему уравнений:</p> <math display="block"> <mrow> <mo fence="true" form="prefix">{</mo> <mtable> <mtr> <mtd> <mi>x</mi> <mo>−</mo> <mi>y</mi> <mo>=</mo> <mi>7</mi> <mtext>,</mtext> </mtd> </mtr> <mtr> <mtd> <mn>3</mn> <mi>x</mi> <mo>+</mo> <mn>2</mn> <mi>y</mi> <mo>=</mo> <mi>16</mi> <mtext>.</mtext> </mtd> </mtr> </mtable> </mrow> </math> </body> </html>