MATLAB の新機能

データの前処理と解析、スクリプトとアルゴリズムの記述、アプリの構築のほか、チームベースのソフトウェア開発のための新しいツールを追加。

そして、MATLAB のパフォーマンスが一段と向上しました。これらの機能について詳しく見ていきましょう。

ライブエディター

MATLAB ライブエディターを使用して、コードや出力、書式設定されたテキストを実行可能なノートブックにまとめる MATLAB スクリプトと関数を作成します。

新機能 ライブエディター コントロール: 変数をドロップダウン項目やスライダーの値に関連付けて、ライブスクリプトで動的なコントロールを作成 (R2021a)

新機能 ライブエディター フォント: settings を使用して、プログラムでフォントの名前、スタイル、サイズ、色を変更 (R2021a)

新機能 ライブエディター ブックマーク: 別の行にすばやく移動 (R2021a)

新機能 ライブエディター アニメーション プレイバック コントロール: 対話的なインターフェイスでアニメーションを制御 (R2021a)

iOS でのライブエディター: iPhone または iPad から MATLAB Mobile でライブスクリプトを作成、編集、実行 (R2020b)

ライブエディター: ライブスクリプトのハイパーリンクを使用して別のライブスクリプトを開く (R2020b)

標準形式へのエクスポート: ライブスクリプトや関数を個別およびバッチで PDF、Microsoft Word、HTML、LaTeX に保存 (R2019a、R2020b)

ライブタスク: ライブエディターのタスクを使用して、パラメーターを調整、結果を参照し、コードを自動生成 (R2019b、R2020a)

コードの非表示: ライブスクリプトの共有時/エクスポート時にコードを非表示 (R2019a)

アプリの作成

App Designer を利用すると、ソフトウェア開発の専門家でなくても完成度の高いアプリを作成できます。

新機能 関数 uihyperlink: アプリおよび App Designer キャンバスにクリック可能なリンクを追加して構成 (R2021a)

新機能 関数 uitree: アプリおよび App Designer キャンバスにチェック ボックス ツリーを追加して構成 (R2021a)

新機能 関数 scroll: プログラムでテーブル UI コンポーネント内の場所にスクロール (R2021a)

新機能 App Designer: 設計ビューキャンバスでのズームとパン、コード ビュー エディターでのズーム、分割画面レイアウトのカスタマイズ、色とタブの設定の制御 (R2021a)

Icon プロパティ: UI Figure ウィンドウや、ツールバーのプッシュ/切り替えツールのカスタムアイコンを指定 (R2020b)

比較ツール: App Designer アプリの差分の取得およびマージ (R2020b)

UI のカスタム コンポーネント: 独自のクラスを作成して、アルゴリズムをカプセル化した複合 UI コンポーネントのほか、グラフィックスや UI オブジェクトを作成 (R2020b)

関数 exportapp/getframe: アプリの画像の取得および保存 (R2020b)

関数 uicontextmenu: App Designer と uifigure ベースのアプリでコンテキストメニューを追加および設定 (R2020a)

関数 uitoolbar: App Designer と uifigure ベースのアプリでカスタムツールバーを追加 (R2020a、R2020b)

関数 uihtml: HTML、JavaScript、または CSS コンテンツをアプリに追加 (R2019b)

データのインポートと解析

さまざまなソースに対応したデータへのアクセス、整理、クリーニング、および解析

新機能 XML ファイル I/O: XML ファイルの table、timetable、struct への直接の読み込みおよび書き出し、XML 処理用の MATLAB API を使用した XML ファイルの作成、変換、クエリ (R2020b、R2021a)

新機能 リモートデータ I/O: 低水準ファイル IO 関数、readtablewritetablesaveload その他の高水準関数を使用して、リモートに保存されたファイルの読み込みおよび書き出しをサポート (R2019b、R2020b、R2021a)

新機能 関数 ts2timetable: timeseries オブジェクトを timetable に変換 (R2021a)

[最適化] ライブエディター タスク: 対話的に最適化問題を作成および求解 (R2020b)

ライブエディター タスク: MATLAB コードを自動生成するタスクで、対話的にデータを前処理 (R2019b) し、table と timetable を対話的に操作 (R2020a)

ワークフローのグループ化: grouptransform (R2018b)、groupcounts (R2019a)、groupfilter (R2019b) を使用してデータのグループに基づいた操作を実行

データ型 I/O: 行列、cell 配列、struct、および timetable の読み書きに特化した関数の使用 (R2019a、R2020b)

Parquet ファイルのサポート: 単一または大規模な Parquet ファイルの集合を読み書き (R2019a)

データの可視化

新しいプロット関数とカスタマイズ機能でデータを可視化

新機能 [プロットの作成] ライブエディター タスク: コードを記述することなくライブスクリプトにプロットを追加 (R2021a)

新機能 関数 bubblecloud: 部分と全体の関係を可視化 (R2021a)

関数 bubblechartbubblechart3polarbubblechart: 2D、3D、極座標でのバブルチャートの作成 (R2020b)

関数 swarmchart: 離散データの分布を可視化 (R2020b)

タイトル、サブタイトル、および軸ラベル: プロットにサブタイトルを追加し、タイトルと軸ラベルをプロットボックスに合わせて調整 (R2020b)

関数 boxchart: 箱ひげ図を作成してグループ化された数値データを可視化 (R2020a)

関数 exportgraphicscopygraphics: ワークフロー公開のサポートが強化されたグラフィックスの保存およびコピー (R2020a)

関数 tiledlayout: レイアウトの配置、入れ子、およびグリッドサイズの変更 (R2020a)

チャート コンテナー クラス:直交座標、極座標、または地理的プロットのタイルを表示するチャートの開発 (R2020a)

ビッグデータ

大幅な変更を加えることなく、現在の解析をビッグデータに拡張

新機能 データストア: 並列処理でデータストアからすべてのデータを読み込み (R2021a)

ArrayDatastore オブジェクト: インメモリデータからデータストアを作成 (R2020b)

データストアの書き込み:データ エンジニアリングおよびファイルベースのワークフロー用にデータストア型の大規模データをディスクに書き込む (R2020a)

tall 配列のカスタマイズ: チャンクまたはスライディング ウィンドウで tall 配列を操作するカスタムアルゴリズムを作成 (R2018b、R2019a)

tall 配列の関数: 関数innerjoinouterjoinxcorrsvdwordcloud など、より多くの関数が tall 配列に対応 (R2018b、R2019a、R2019b)

カスタムデータストア: カスタムのデータストア フレームワークを使用して Hadoop ベースのデータベースを読み込み (R2019a)

FileDatastore オブジェクト: ファイルを細かく分けてインポートすることで大きなカスタムファイルを読み込み (R2019a)

データストア: データストアを結合して変換 (R2019a)

言語およびプログラミング

新しいデータ型と言語構成によって、より高速かつ明確でメンテナンスしやすいコードを記述。

新機能 name=value 構文: 名前 - 値の引数を関数に渡すための name=value 構文の利用 (R2021a)

新機能 クラス ダイアグラム ビューアー: クラスの詳細を確認し、設計を共有するためのグラフィカルなクラスダイアグラムの作成 (R2021a)

pattern オブジェクト: 文字列でテキスト検索を行うためのパターンを作成 (R2020b)

ファイルのエンコード: MATLAB ファイルにおける非 ASCII 文字セットと、既定の UTF-8 エンコーディングでの、クロスプラットフォーム互換性に対するサポートを改善 (R2020a)

関数の入力引数の妥当性確認: 入力エラーチェックを簡略化するための関数の入力引数の宣言 (R2019b、R2020b)

パフォーマンス

MATLAB のコード実行速度は、6 年前と比べて 2 倍以上スピードアップしました。コードを書き換える必要はまったくありません。

新機能 スパース行列の乗算: 大規模なスパース行列を乗算する場合のパフォーマンスを改善 (R2021a)

新機能 スパース線形システム: 複数列の B を持つスパース線形システム A*X = B 求解時の性能を改善 (R2021a)

関数 spdiags: スパースバンド行列の作成性能の向上 (R2020b)

関数 uitree: ツリー内に多数のノードを作成する際のパフォーマンスを改善 (R2020b)

関数 uilistbox: リストボックスに複数の項目を設定する場合のパフォーマンスを改善 (R2020b)

プロファイラー: フレームグラフを使ってコードの実行性能を視覚的に調査し改善 (R2020a)

ライブエディター: ループとアニメーション プロットのパフォーマンスを改善 (R2020a)

ソフトウェア開発

ソフトウェア開発ツールによって、コードの管理とテスト、他のソフトウェアシステムへの統合、クラウドへのアプリケーションの展開をサポート。

新機能 プロジェクト: すべての参照プロジェクトと影響を受けるプロジェクトファイルをリスト表示 (R2021a)

新機能 C++ インターフェイス: std::vector 値、void* 値などの C++ 言語の機能をサポート (R2021a)

Python: MATLAB セッションから Python インタープリターを起動および停止 (R2020b)

コードの互換性レポート: コードの互換性レポートに、サポート対象外の機能に関する警告を追加 (R2020b)

ユニットテスト フレームワーク: クラスターやクラウド上でテストを並列に実行 (R2020b)

Python のプロセス外実行:Python 関数をプロセス外で実行し、ライブラリ競合を回避 (R2019b)

プロジェクト: 作業の整理、タスクとプロセスの自動化、チームとの共同作業 (R2019a)

C++ インターフェイス: MATLAB からの C++ ライブラリ関数の呼び出し (R2019a)

MATLAB 向け Jenkins プラグイン: MATLAB テストを実行して、JUnit、TAP、および Cobertura のコード カバレッジ レポートなどの形式でテストレポートを生成

新しいリファレンス アーキテクチャ: アマゾン ウェブ サービス (AWS) および Microsoft Azure に MATLAB を展開して実行 (R2018b)

ハードウェア制御

Arduino や Raspberry Pi などの一般的なマイクロ コントローラーを制御、Web カメラから画像を取得、ドローンからのセンサーと画像のデータを収集。

新機能Arduino: Nano 33 BLE Sense ボードの使用 (R2021a)

新機能センサーのサポート: LSM および MPU センサーを Raspberry Pi 統合サーバーで使用 (R2021a)

新機能 Raspberry Pi: 統合サーバーでの展開 (R2021a)

新機能Arduino: Arduino Engineering Kit の例を Arduino サポート パッケージに同梱 (R2021a)

Raspberry Pi: MATLAB Online からハードウェアに MATLAB 関数を展開 (R2020b)

[Web カメライメージの取得] ライブエディター タスク: Web カメラ画像を対話的にキャプチャ (R2020b)

センサーのサポート: BNO055 センサーおよび Sensor Fusion and Tracking Toolbox と Navigation Toolbox を使って向きを推定 (R2020b)

Arduino: IDE バージョン 1.8.13 を使用 (R2021a)

Web カメラを使用したライブタスクでライブイベントを追跡