QGIS – カテゴリによる地図の塗り分け

都道府県や市区町村のような地図を、値データではなくカテゴリデータで分類して塗り分ける方法。自治体名そのものをデータとすると、自治体ごとに色を変えて塗り分けることができる。

qgis-japan-random-paint

この操作は次のように行う。

  1. レイヤパネルで塗り分けたい地図のレイヤを右クリック→「プロパティ」
  2. ダイアログの左タブで「スタイル」を選択
  3. 一番上のドロップダウンで「分類された」を選択
  4. その下のドロップダウンで、分類に使うカテゴリデータの項目を選択
  5. シンボルや色階調を選択(上の都道府県塗り分けでは「ランダムカラー」を使った)
  6. 「分類」ボタンを押してスクロールウィンドウの表示を確認
  7. 「はい」ボタン/「適用」ボタンで塗り分け実行

 

QGIS – ラベル表示

表示されている地物に、属性データのカテゴリーを選んでラベルとして表示することができる。

  1. レイヤパネルで対象のレイヤを右クリック→「プロパティ」
  2. 左側のタブで「ラベル」を選択
  3. 一番上のドロップダウンで「このレイヤのラベル表示」を選択
  4. その下のドロップダウンでラベルに使う項目を選択
  5. 「はい」か「適用」を選択

ただし日本の全市区町村名をラベルとして表示させようとするとかなり重たくなる。一定サイズ以上の地物だけラベルを表示させるようにすると軽くなる。

 

QGIS – デフォルト座標系の設定

QGISでデフォルトの座標系(CRS: Coordinate Reference System)を設定するには以下のように操作する。

「設定」→「オプション」でオプションダイアログ|CRSが開くので、「常に次のCRSで新プロジェクトを開始する」の「CRSの選択」ボタンを押す。

qgis-settings-crs1

「空間参照システム」ダイアログが開くので、「フィルター」の欄に”JGD2000″と入力。

qgis-settings-crs2

「世界中の空間参照システム」のエリアのトップにJGD2000/EPSG4612が表示されるので、それを選択して「OK」。

 

MANDARA – 国土数値情報(高速道路)のインポート

概要

MANDARAは国土数値情報など複数の地図データ形式を取り込むことができる。高速道路データを国土数値情報のダウンロードサービスからダウンロードしてMANDARAに取り込んだので、その過程をメモ。国土数値情報の高速道路時系列の内容についてはこちら

国土数値情報では、全国の高速道路のリンクと接合部のデータがJPGIS形式で提供されているものの、MANDARAでJPGISで取り込み可能なのは「行政区域(面)」、鉄道(線)」、「公共施設」のみ。

旧統一フォーマット形式で「道路」のデータCSVで提供されているが、こちらは平成7年度と年次が古いので使い難い。

ところで、先のJPGIS形式のデータをダウンロードするとShape形式(shp)やdbfファイルもついてくる。これらを取り込むことで、地図ファイルデータと属性データとして取り込むことができる。この取り込み方法には、属性データまで一括して取り込む方法と、地図ファイルと属性データを別々にファイル化して取り込む方法がある。

たとえば高速道路の場合、xmlファイルと別に、路線についてはN06-15_HighwaySection、ICやJCTなどのジョイントについてはN06-15_Jointといったファイル名が付され、それぞれに拡張子shp、dbf、shxの3種類のファイルが得られる。

方法1:地図と属性の一括取り込み

  1. 作業用のフォルダに3つの拡張子(shp、dbf、shx)のファイルを保存
  2. MANDARAを起動した直後のダイアログで「シェープファイル読み込み」を選択
  3. shpファイルを参照・選択して読み込み
    • 複数のshpファイルを読み込むことができ、それぞれ別のレイヤの属性として取り込まれる
    • 地図データは、一つのファイルに複数のオブジェクトグループとして取り込まれる

この方法の特徴は以下の通り。

  • 路線と結節点のオブジェクト名は、元のオブジェクト名が基本になる
    • ファイル名を使うと[ファイル名].[オブジェクト連番]になる
    • 複数のShapeファイルを取り込んでファイル名を使わないと[ファイル連番].[オブジェクト連番]になる
  • 地図ファイルを分離するには、「編集」メニューからマップエディタを開き、地図ファイルとして保存
  • 属性データはdbfファイルに保存された順番・内容のまま
    • 集成したい場合は属性データの編集で行う

方法2:地図と属性を別々にファイル化

地図データの取得

  1. マップエディタを起動
  2. 「地図データ取得」→「シェープファイル」でダイアログが開く
  3. よみこむShapeファイルを選択していく
  4. 「オブジェクト名のヘッダにファイル名をつける」のチェックを入れる/はずす
  5. 座標系、測地系、投影法を確認して「ファイル変換」ボタンを押す
  6. このあと必要なら、オブジェクト名を一括変換

参考:オブジェクト名の変更と属性データの取り込み

オブジェクト名の変更

Shapeファイルを読み込んだままの状態では、オブジェクト名は単なる連番か、その前にファイル名が付されたものになる。オブジェクト名に路線名を入れたかったのと、連番の桁数を固定長としたかったので、次のようにした。

  1. dbfファイルを表計算ソフトで開く
  2. 路線名のデータをコピーして別シートに貼り付け
  3. 同じ項目数の連番を生成して値コピー
  4. 固定長の連番を文字列化し路線名と合体させて新たなオブジェクト名とする
  5. 元の連番を1列目、新たなオブジェクト名を2列目に配置して、2列分の全データをコピー
  6. マップエディタのオブジェクト名の一括変換でオブジェクト名を変換

属性データの取り込み

種別や車線数などの基本データをCSV化して、後で利用しやすいようにしておく。

  1. dbfファイルを表計算ソフトで開く
  2. 先頭列を確保し、マップエディタのオブジェクト名のコピー機能を利用して、オブジェクト名をコピー・ペースト
  3. 不要なデータ項目(列)を削除
  4. 項目名を適宜修正
  5. ファイルをCSV形式で保存

 

MANDARA – オブジェクトの操作

マップエディタ

オブジェクトの検索

マップエディタで開いている地図ファイルのオブジェクトは、「編集」→「オブジェクト名関係」→「オブジェクト名検索」で開くダイアログで検索できる。

ただし、通常オブジェクトと集成オブジェクトを同時に検索することができない点に注意。

オブジェクト編集の対象は通常オブジェクトと集成オブジェクトをトグルで切り替えるが、この設定が検索にも影響する。

  1. オブジェクト編集モードで「編集対象選択」を押すとだいあろぐがたちあがある
  2. 「オブジェクトのタイプ」で「通常」か「集成」のどちらかを選択
  3. 「編集」メニューからオブジェクト検索のダイアログを開くと、「オブジェクトのタイプ」が上で選択した方(通常/集成)になっていて、選択されていない方はグレイアウトになっている

オブジェクト名一括変換

オブジェクト名の一括変換は、あらかじめ表計算ソフトで作成したデータをクリップボードにコピーして、その内容で一括変換を行う。

変換データの準備

表の構成は、1列目が元のオブジェクト名、2列目が新しいオブジェクト名1、3列目は必要に応じて新しいオブジェクト名2。

一括変換操作

表のデータを準備した後、以下のように操作。

  1. 表計算ソフトの対象エリアを選択してコピー
  2. 「編集」→「オブジェクト名関係」→「オブジェクト名一括変換」
  3. 「クリップボードのデータをもとに一括してオブジェクト名を変換します」のダイアログで「はい」のボタンを押す

オブジェクト名のコピー

地図ファイルデータのオブジェクト名をクリップボードへコピーし、表計算ソフトなどへ貼り付けて利用することができる。データの一括作成・変更に便利。

  1. 「編集」→「オブジェクト名関係」→「クリップボードへオブジェクト名のコピー」でダイアログが立ち上がる
  2. 必要なオブジェクト名を絞り込み・指定
  3. 「オブジェクト名1をコピー」などのボタンを押してクリップボードへコピー
  4. 表計算ソフトなどへ貼り付ける

 

 

MANDARA – 地図ファイルだけの表示について

地図ファイルだけを表示する3つの方法

地図データのオブジェクトを、主題図での統計操作ではなく絵柄として描画させたいとき、トライアル・アンド・エラーでわかったことをメモ。数値処理を意図しないで地図だけを表示させたい時、次の3つの方法があるらしい。

  1. 白地図データのレイヤを設定して読み込み、直接表示させる方法
  2. 属性データでダミーオブジェクトを表示させる方法
  3. カテゴリ・データを使って表示させる方法

いろいろ試してみたところ、3のカテゴリ・データを使う方法が柔軟で手軽なようだ。

白地図データを直接表示させる方法

まず、地図ファイルからレイヤを構成する。

  1. 白地図データ表示を指定してダイアログを表示
    • MANDARA起動時のダイアログで「白地図・初期属性データ表示」を選択
    • MANDARAメニューの「ファイル」→「白地図・初期属性データ表示」
  2. 「地図ファイル」エリアの「参照」ボタンを押して地図ファイルを指定
  3. 既に1つレイヤが登録されているので、そのレイヤで表示するオブジェクトグループを選択
  4. さらに「レイヤ追加」ボタンを押して新規レイヤを追加し、表示するオブジェクトグループを選択
  5. 「OK」ボタンを押して設定終了→主題図メニューへ
    • このとき、同じレイヤに異なる形状のオブジェクトグループを指定すると「形状の異なるオブジェクトグループが指定されています」とエラーになる

形状が異なるオブジェクトグループは同じレイヤに指定できないので、レイヤ分類は多くの場合必要になる。

次に、各レイヤを重ね合わせ表示させる。

  1. 「データ表示」タブで「対象レイヤ」を選択して、「重ね合わせセット」ボタンを押す
    1. 「重ね合わせ表示」タブの「重ね合わせデータ」に登録されたことが確認できる
  2. 以後、同じ手順で対象レイヤを指定して重ね合わせセット
  3. 「重ね合わせ表示」タブで「描画開始」ボタンを押して地図を表示
  4. 必要に応じてMANDARAの形式でデータ・設定を保存

この方法の特徴は以下の通り。

  • 特に新たな属性データを準備する必要がない
  • レイヤの変更が柔軟に行えない
    • 変更のたびに「白地図・初期属性データ表示」からやり直さなければならない
  • オブジェクトの表示色はオブジェクト作成時のものではなく、データ表示のペイントで設定する必要がある

ダミーオブジェクトグループを定義する方法

以下のようなCSVファイルを準備して読み込む。ただし見やすさのため、区切りのcommaの後にTABを入れている。

あるいは必要最低限のタグだけを残すと、以下でもok。

ダミーオブジェクトを指定することで、それらについては属性データがなくても表示される。ただし実体オブジェクトとその属性データが全くないとエラーになるので、最低でも一つ、この例では「北海道」というオブジェクトを準備している。

この方法の特徴は以下の通り。

  • 同じCSVファイルを再利用可能
  • 地図だけの表示でも最低一つの実体オブジェクトが必要となり、その表示方法の設定が必要になる

カテゴリ・データを使う方法

以下のようなCSVファイルを準備して読み込む。

表示は以下の手順で。

  1. 各レイヤ・カテゴリのデータ表示パターンを設定する
  2. 必要ななレイヤ・データ項目を重ね合わせる。

この方法の特徴は以下の通り。

  1. 同じCSVファイルを再利用可能
  2. セットした表示パターンをセーブ可能
  3. レイヤを別ファイルにして、データ挿入が可能
    • 使用する地図ファイルは共通していなければならない

 

 

MANDARA – オブジェクトの種類と作成

オブジェクトの種類

形状の種類

点オブジェクト
図形としては位置情報だけを持つ。場所や建物などに使う。
線オブジェクト
端点と任意個数の通過点を持つ折れ線。道路や鉄道などに使う。
面オブジェクト
複数のラインで囲まれた閉じた面。自治体区域などのエリアに使う。

包含関係の種類

通常オブジェクト
それ自身が点/線/面の形状で規定される。集成オブジェクトの構成要素となりうる。
集成オブジェクト
通常オブジェクトや集成オブジェクトの集合体としてのオブジェクト。集成オブジェクトの構成要素となりうる。たとえば最小単位としての市区町村を通常オブジェクトとして、複数の市区町村オブジェクトからなる集成オブジェクトとしての都道府県オブジェクトを構成するなど。

通常オブジェクトの作成

通常オブジェクトを作成・格納するのは地図データファイル(MPF)で、マップエディタ上で複数種類のオブジェクトを作成していく。

点オブジェクトの作成

  1. マップエディタで「オブジェクト編集」を選択
  2. 「新規オブジェクト」ボタンを押すと、画面中央に新たな点オブジェクトが表示される
  3. 点の位置はマウスカーソルを矢印の状態にしてドラッグ
    • 左上に座標または経緯度が表示される。
  4. オブジェクトの名前とオブジェクトグループを入力・選択して「登録」ボタンを押す

線オブジェクトの作成

まず必要に応じて、新たな線種とオブジェクトグループを登録する。

線種の新規登録

  1. 「設定」→「線種設定」→「線種設定」でダイアログ表示
  2. 「線種追加」ボタンを押すと、新規の線種が追加される
    • 線種の名称(ex. 道路)とタイプ(通常オブジェクト/オブジェクトグループ連動)を選択
    • 「パターン」をクリックして線の色とタイプを選択
  3. 「OK」ボタンを押して線種を登録

オブジェクトグループの新規登録

  1. 「設定」→「オブジェクトグループ設定」→「オブジェクトグループ設定」でダイアログ表示
  2. 「グループ追加」ボタンで新規グループが追加される
    • 名称を入力
    • タイプと形状を選択
    • 使用する線種を選択
  3. 「OK」ボタンを押してオブジェクトグループを登録

作成の第1ステップは、オブジェクトの実体としての線を描く。

  1. マップエディタで「ライン編集」を選択
  2. 「新規ライン」ボタンを押すと、画面中央に両端点と中点を持ったラインが表示される
  3. ラインの各点を必要な位置に移動
  4. 通過点の追加削除
    • リンク部分をクリックして新しい通過点を追加
    • 既存の通過点を右クリックして削除
  5. 「登録」ボタンを押してラインを登録

第2ステップは、オブジェクトの作成とラインの関係づけ

  1. 「オブジェクト編集」を選択
  2. 「新規オブジェクト」ボタンを押すと、画面中央に新たな点オブジェクトが表示される
  3. オブジェクトの名称を入力
  4. 目的のオブジェクトグループを選択
    • このとき線形状のオブジェクトグループを選択すると「オブジェクトグループの形状が異なります。」と表示されるが、かまわず「はい」を押す
  5. 目的のラインをクリックするとラインが赤色に変わり、形状が点から線に変わる
  6. オブジェクト代表点をラインの上などに移動して位置決め
  7. 「登録」ボタンを押してオブジェクトを登録

面オブジェクトの作成

  1. まず、必要に応じて線種とオブジェクトを新規登録(線オブジェクトの作成を参照)。
  2. 第1ステップの面の描画は線オブジェクトと同じ手順だが、最後にループとすること。
  3. 第2ステップのオブジェクトの登録は線オブジェクトと同じ。

集成オブジェクトの作成

 

WordPressで<body onload=…>を使う

WordPressでは<body>タグはphpのコードに書かれているが、それとは別にonload時の実行を、以下のようなjavascriptコードで実現できる。

まず以下のようなjsファイルをアップロードしておく。

custom_jsなどを利用して、headセクションでこのファイルを読み込む。

このページのonload時に、上のファイルが実行されてダイアログが表示されたはず。

 

WordPressでカテゴリをクリックしても表示されない

WordPressでカテゴリをクリックしても「ページが見つかりませんでした」と表示される現象が生じた。

ネット上で同様の現象が挙げられており、「タグやカテゴリをクリックすると404エラーで表示されない」というものが多かった。それらのうち以下の方法で解決したので記録しておく。

  1. ダッシュボードメニューの「設定」→「パーマリンク設定」
  2. 下部の「カテゴリーベース」が”.”となっていたのを”category”に書き換え
  3. 保存

他にもパーマリンクの設定を保存しなおすだけで直る、というのもあったが、こちらは効かなかった。

 

 

WP QuickLaTex – 数式の記述

概要

WordPressで整った数式を表示したいとき、MS-Officeの数式エディタの表示を画像として張り付けることを考えたが、探してみると”MathJax-LaTeX”というプラグインがよく紹介されていた。LaTexの書式で書いた数式が整形されて画像として張り付けられるらしい。

MathJax-LaTexはプラグインをインストール後、記事の冒頭にショートコード[mathjax]を書き、そのページ内でLaTexの記述が可能になという手軽なものなので、一度導入して試してみた。

ところが、ショートコードを入れたると$$マークや$マークが数式整形のための記号として認識されてしまう。たとえばjQueryに関する記事中やスクリプトコードで$マークを使うとややこしいことになる。また数式をインラインで書けないとか、テキストモードで複数行にわたる数式を書けないとか、いろいろ制約があるようだ。

そこでほかにもプラグインはないかと探して、以下のサイトに辿り着いた。

WordPress の数式整形プラグイン

WP QuickLaTex“というプラグインがあるそうで、試しにインストールしてみたところ悪くない。

導入手順

  1. プラグイン”WP QuickLaTex”をインストールし、有効化
  2. QuickLaTexの設定でインライン記述の$…$を無効化
  3. 数式を表示したい記事に以下のショートコードを書く(これにより、latexの$$記号が有効化される)

    あるいは、ショートコードなしで記事中でのショートコードで囲んだ部分はQuickLaTexの認識対象になる。
  4. LaTex形式で数式を記述

インラインスタイル

インラインスタイル(a=1のような書き方)の場合は、以下のようにショートコードで囲む。

この機能は、冒頭にショートコードを書かなくても使える。

ディスプレイスタイル

式を別段落で表示させるディスプレイスタイルの書き方には、以下の2つの方法がある。

latexpageショートコードを書く場合

この場合、ショートコード以前の$$マークは無視されるが、ショートコードを書くと記事中の$$マークはQuickLaTexが数式解釈に使う。

latexpageショートコードを書かない場合

ディスプレイスタイルでは、上記いずれの書き方でも、テキストモードで改行して複数行にわたって記述可能。

結局現在は、ディスプレイスタイルも単に[latex]...[/latex]記号のみで書いている。

 

注意点

  • $マークを設定で無効化した場合ショートコード以降の記事の中に直接$マークは書ける
  • latexpageショートコード書くと記事中のの$$マークが数式解釈に使われる
  • 改行文字(\\)は機能しないが、\begin{align}~\end{align}\begin{array}{...}\end[array]で括ると改行される
  • 以下のケースではうまく表示されない
    • ドルマーク2つで数式を書いた直後の行が<pre></pre>の場合、表示されない

記述例

WP QuickLaTexでLaTex形式の記述がどのように表示されるか列挙する。

記号

文字

{\rm }で斜体を通常書体に、{bf }と\mathbf{}は同じで太字、{\boldmath }は機能しない。いずれもギリシャ文字(小文字)には効かない。

     \begin{align*} &abcABC \alpha \beta \gamma \\ &{\rm abcABC \alpha \beta \gamma} \\ &{\bf abcABC \alpha \beta \gamma} \\ &\mathbf{abcABC \alpha \beta \gamma} \\ &{\boldmath abcABC \alpha$ \beta \gamma} \end{align*}

その後、\boldsymbolでアルファベットの大文字・小文字、ギリシャ文字を斜体太字にできることがわかった。

     \begin{gather*} \boldsymbol{abcABC \alpha \beta \gamma} \end{gather}

等号・不等号

    $$ \begin{align} &a = 1 \\ &a \neq 2 \\ &a \leq 2 , \: a \leqq 2 \\ &a \geq 0 . \: a \geqq 0 \\ &a \sim 1.1 , \: a \simeq 1.1 , \: a \approx 1.1 , \:a \fallingdotseq 1.1 \end{align} $$

加減乗除

普通の記号

    $$a + b \times c \div d$$

分数

分数の記述は\fracで(分子・分母で\fracを使うと小さくなるので、元のままのサイズにしたいときは\dfracを使う

\frac{\frac{1}{2} + \frac{1}{2}}{\dfrac{1}{3} + \dfrac{1}{3}}

括弧

分数などに対して背の高い括弧を使うときは、\left(、\right)などを使う。

    $$ \left( \frac{1}{2} + \frac{1}{3} \right) \times 6 = 5 $$

ドット表記

    $$z = x \cdot y$$

プラス/マイナス

    $$ \begin{align} a \pm b \\ a \mp b \end{align} $$

多項省略・ドット表記

    $$ \begin{align} S &= 1 + 2 + \cdots + 100 \\ S &= 1 + 2 + \ldots + 100 \\ &\vdots \\ &\ddots \end{align} $$

矢印

    $$ \begin{align} &\leftarrow \: \Leftarrow \: \longleftarrow \: \Longleftarrow \\ &\rightarrow\ \: \Rightarrow \: \longrightarrow \: \Longrightarrow \\ &\leftrightarrow \: \Leftrightarrow \: \longleftrightarrow \: \Longleftrightarrow \\ &\uparrow \: \Uparrow \: \downarrow \: \Downarrow \\ &\nearrow \; \searrow \; \swarrow \: \nwarrow \end{align} $$

    $$\angle R = 90^\circ$$

基本形

latexショートコードだけで囲むと、数式が左詰めになり、式番号なしで数式が表示される。

     \begin{equation*} z = x + y \end{equation*}

equation環境では、数式がセンタリングされ、式番号が付けられる。

     \begin{equation*} z = x + y \end{equation}

複数行の数式

eqnarray環境では、複数式を一つにまとめて扱える。

     \begin{eqnarray*} (a + b)^2 &=& a(a + b) + b(a + b) \\ &=& a^2 + b^2 + 2ab \\ (a + b)(a - b) &=& a(a - b) + b(a - b) \\ &=& a^2 - b^2 \end{eqnarray}

  • 改行位置に”\\”を記述
  • 等号などで縦位置を揃えたいときは、’&’で囲む

方程式の左を中括弧で囲いたい場合、\left\{とするが、eqnarray環境ではうまくいかない。array環境を使えばよいが、若干の注意点がある。

  • 全体をequation環境で囲う(行番号が不要の場合にはequation*)
  • 中括弧の場合は\{とエスケープする
  • 右側の括弧を省略する場合は\right.

     \begin{equation*} \left\{ \begin{array}{lll} x + y & = & c \\ x ^2 + y^2 & = & r^2 \right. \end{array} \end{equation}

単に中央ぞろえで複数行の式を書きたい場合はgather環境が手軽。式番号は自動でつけてくれる(以下の例ではgather*として式番号を抑止している)。

     \begin{gather*} a x^2 + bx + c = 0 \\ a \left( x + \frac{b}{2a} \right) ^2 - \frac{b^2}{4a} + c = 0\\ x + \frac{b}{2a} = \pm \sqrt{\frac{1}{a} \frac{b^2 - 4ac}{4a}} \\ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \end{gather}

式中の任意の位置でそろえるにはalign環境と&記号を使う。たとえば全体をセンタリングしながらその中で式を左揃えにしたい場合、全ての式の先頭に&記号を置けばけばよい(もちろん、式ごとの揃える位置を変えることもできる)。

     \begin{align*} & x^2 + y^2 = r^2 \\ & x = r \cos \theta , y = r \sin \theta \\ & r^2 \cos ^2 \theta + r^2 \sin ^2 \theta = r^2 \end{align}

スペース

1文字、2文字分のスペース(quad, qquad)

\quad x \quad y
\qquad x \qquad y

任意長のスペース(hspace)

\hspace{12pt} x \hspace{12pt} y
\hspace{1pc} x \hspace{1pc} y
\hspace{12mm} x \hspace{12mm} y
\hspace{1.2cm} x \hspace{1.2cm} y

短いスペース

\! x \! y
\, x \, y
\: x \: y
\; x \; y

\!は負のスペースで、後ろの文字を前へ詰める。

A \! \! \! B(AとBの間に\!が4つ)

任意の文字分のスペース

\phantom{} 1+1\phantom{-}1

分数・括弧

    $$ \left| \frac{c+d}{a+b} \right| ^2 = \left( \frac{c+d}{a+d} \right) ^2 = \left\{ \frac{c+d}{a+d} \right\} ^2 $$

平方根・n乗根

    $$ \begin{align} &l = \sqrt{x^2 + y^2} \\ &\sqrt[n]{x} \end{align} $$

\sqrtのn乗根のnは”[n]”と大括弧で、数値xは”{x}”と中括弧で書いている点に注意。

指数表現・添字表現

    $$z_i^n = x_i^n + y_i^n$$

関数

三角関数

    $$ \begin{align} &\sin x , \cos x , \tan x \\ &\sec x , \csc x , \cot x \\ &\arcsin x , \arccos x , \arctan x \end{align} $$

対数

    $$\log_2 x ,\: \log x ,\: \ln x$$

総和・総積

    $$ \begin{align} &S = \sum_{n=1}^{10} n \\ &P = \prod_{m=1}^{10} m \end{align} $$

順列・組み合わせ

順列・組み合わせのように、記号の前にプレフィックスが付く場合は、ダミーに対してサフィックスを付ける。

     \begin{align*} {}_n P_k \quad {}_n C_k \end{align}

組み合わせを二項係数の形で書く場合は\binomを使う。使い方は\fracと同じで、分数などの中で小さくなるのを避ける場合には\dbinomを使う。

     \begin{align*} \binom nk \quad \binom {n-k}k \quad \frac{\binom{n-k}k}{\dbinom k{k-r}} \end{align}

ベクトル・行列

ベクトル

列ベクトルはarray環境でn行1列とする。{c}は各要素を中央ぞろえで、左揃えならl、右揃えならr。

    $$\vec{a} =  (a_1, \cdots , a_n)$$

    $${\bf a} = \left( \begin{array}{c} a_1\\ \vdots\\ a_n \end{array} \right)$$

行列

行列はarray環境で

    $$ {\bf A} = \left[ \begin{array}{cccc} a_{11} & a_{12} & \cdots & a_{1n}\\ a_{21} & a_{22} & \cdots & a_{2n}\\ \vdots & \vdots & \ddots & \vdots\\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{array} \right]$$

ベクトル・行列の太字表記

QuickLatexでベクトル・行列を太字で表記する方法。

    $$ \boldsymbol{Ax} = \lambda \boldsymbol{x} $$

ノルム・垂直・平行

     \begin{gather*} \| \boldsymbol{a} \| \\ \boldsymbol{a} \perp \boldsymbol{b} \\ \boldsymbol{a} \parallel \boldsymbol{b} \end{gather}

行列の転置

二通りの転置行列の記述方法。

 

     \begin{gather*} {}^t \boldsymbol{A} \\ \boldsymbol{A} ^{\rm T} \end{gather}

微分・積分

    $$ \frac{dy}{dx} = f'(x) $$

 

    $$ \Delta f = \nabla^2 f = \frac{\partial^2 f}{\partial x^2} + \frac{\partial^2 f}{\partial y^2} $$

    $$ \int_a^b f(x) dx $$

上括弧・下括弧

    $$ \overbrace{1, 2, 3, 4,}^{\rm over} \underbrace{5, 6, 7, 8}_{\rm under} $$

筆算

簡単な筆算は、arrayブロックで\hlineを使う。

    $$ \begin{array}{rr} & 12345 \\ + & 678 \\ \hline & 13023 \end{array} $$

多項式の和になるとちょっとややこしい。

    $$ \begin{array}{rcccccc} A_n &= &a_1 &+ &\cdots &+ &a_n \\ B_n &= &b_1 &+ &\cdots &+ &b_n \\ \hline A_n + B_n &= &(a_1 + b_1) &+ &\cdots &+ &(a_n + b_n) \end{array} $$