pyvista.DataSetFilters.sort_labels#

DataSetFilters.sort_labels(scalars=None, preference='point', output_scalars=None, progress_bar=False, inplace=False)[ソース]#

ラベル付けされたデータをポイント番号またはセル番号で並べ替えます.

このフィルタは,出力ラベルが [0, N) から連続し, (ラベル数の) 大きいものから小さいものへと降順にソートされるように, N のラベルを持つ任意の型のスカララベルデータをリナンバリングします.つまり,最大のラベルは 0 という値を持ち,最小のラベルは N-1 という値を持ちます.

フィルターは, sort=True を使用した pyvista.DataSetFilters.pack_labels() の便利なメソッドです.

パラメータ:
scalarsstr, optional

ソートするスカラーの名前.デフォルトは現在アクティブなスカラーです.

preferencestr, default: "point"

scalars が指定されている場合,これはデータセット内で検索するために推奨される配列型です. 'point' または 'cell' のいずれかでなければなりません.

output_scalarsstr, None

ソートされた出力スカラーの名前.デフォルトでは,出力は 'packed_labels' に保存されます.

progress_barbool, default: False

もし True ならプログレスバーを表示します.VTK のバージョンが 9.3. より低い場合は効果がありません.

inplacebool, default: False

True の場合,メッシュはin-place更新されます.

戻り値:
pyvista.Dataset

ラベルがソートされたデータセット.

ソートされた画像ラベルをパックします.

イメージラベルをロードします

>>> from pyvista import examples
>>> import numpy as np
>>> image_labels = examples.download_frog_tissue()

最初の4つのラベルのラベル情報を表示します

>>> label_number, label_size = np.unique(
...     image_labels['MetaImage'], return_counts=True
... )
>>> label_number[:4]
pyvista_ndarray([0, 1, 2, 3], dtype=uint8)
>>> label_size[:4]
array([30805713,    35279,    19172,    38129])

ソートラベル

>>> sorted_labels = image_labels.sort_labels()

4つの最大のラベルのソートされたラベル情報を表示します.ソート後のラベルサイズの違いに注意してください.

>>> sorted_label_number, sorted_label_size = np.unique(
...     sorted_labels["packed_labels"], return_counts=True
... )
>>> sorted_label_number[:4]
pyvista_ndarray([0, 1, 2, 3], dtype=uint8)
>>> sorted_label_size[:4]
array([30805713,   438052,   204672,   133880])