sorty

Сортировка элементов в столбце тепловой карты

Описание

пример

sorty(h,column) отображает элементы в column в порядке возрастания (с верхней части по дно). Эта функция сортирует элементы столбца путем перестройки строк. Задайте column как один элемент или как массив элементов из XData. Если первый заданный столбец имеет повторяющиеся значения, то sorty переставляет оставшиеся строки в соответствии со вторым столбцом и так далее.

пример

sorty(h,column,direction), где direction является 'descend', сортирует значения в порядке убывания вместо порядка возрастания (по умолчанию). Сортировка в уникальном направлении для каждого столбца в column, задайте direction как массив, элементы которого 'ascend' или 'descend'.

sorty(___,'MissingPlacement',lcn) определяет, помещать ли NaN элементы первыми или последними в порядке сортировки. Задайте lcn как 'first', 'last', или 'auto'. Настройкой по умолчанию является 'auto', в котором перечислены NaN элементы являются последними для порядка возрастания и сначала для порядка убывания. Используйте эту опцию после любой из предыдущих комбинаций входных аргументов.

sorty(h) отображает элементы в первом столбце в порядке возрастания. Если в первом столбце есть повторяющиеся элементы, то sorty переставляет оставшиеся строки в соответствии со вторым столбцом и так далее.

C = sorty(___) возвращает отсортированные данные о цвете, которые являются матрицей значений, отображаемых на графике тепловой карты.

пример

[C,y] = sorty(___) также возвращает отсортированные значения y в том порядке, в котором они отображаются.

Примеры

свернуть все

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

Сначала создайте тепловую карту. Прочтите образец файла outages.csv в таблицу. Образец файла содержит данные, представляющие отключения электрической утилиты в Соединенных Штатах. Таблица содержит шесть столбцов: Region, OutageTime, Loss, Customers, RestorationTime, и Cause. Создайте тепловую карту, которая показывает различные области вдоль оси X и различные причины отключения вдоль оси Y. В каждой камере покажите, сколько раз каждая область испытывала отключение степени по конкретной причине.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Отсортируйте значения в 'NorthEast' столбец так, чтобы они появлялись в порядке возрастания сверху вниз.

sorty(h,'NorthEast')

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Создайте тепловую карту отключений утилит и отобразите значения в 'NorthEast' столбец в порядке убывания путем перестройки строк.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
sorty(h,'NorthEast','descend')

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Создайте тепловую карту отключений утилиты и переставьте строки с помощью значений из нескольких столбцов. Отсортируйте строки так, чтобы столбец 'SouthWest' появляется в порядке возрастания. Поскольку этот столбец содержит повторяющиеся значения, используйте столбец 'NorthEast' чтобы отсортировать оставшиеся строки.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
sorty(h,{'SouthWest','NorthEast'})

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Создайте тепловую карту отключений утилит и отсортируйте значения в 'NorthEast' столбец так, чтобы они появлялись в порядке возрастания, верхняя часть вниз. Возвращает отсортированные данные о цвете и значения строк (значения y) в том порядке, в котором они появляются вдоль оси Y.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
[C,y] = sorty(h,'NorthEast')

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

C = 10×5

     0     1     0     0     1
     0     5     3     0    17
     5    11     4     0     4
     9    18    42     2    85
    19    31    81     8    49
    16    41    13     3    22
    18    70    37     1    19
    32   102    54     6     7
    12   135    20     0   127
    31   143   135     6    23

y = 10x1 cell
    {'earthquake'      }
    {'fire'            }
    {'unknown'         }
    {'equipment fault' }
    {'energy emergency'}
    {'wind'            }
    {'winter storm'    }
    {'thunder storm'   }
    {'attack'          }
    {'severe storm'    }

Создайте тепловую карту отключений утилиты и отсортируйте значения в левом столбце в порядке возрастания (верхняя часть на дно) путем перестройки столбцов. Затем восстановите исходный порядок.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
sorty(h)

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Восстановите исходный порядок строк путем установки DisplayData Y свойство HeatmapChart объект равен оси Y Data свойство.

h.YDisplayData = h.YData;

Figure contains an object of type heatmap. The chart of type heatmap has title Count of Cause vs. Region.

Входные параметры

свернуть все

Тепловая карта для обновления, заданная как HeatmapChart объект.

Столбец для сортировки, заданный как вектор символов, массив ячеек из векторов символов или строковые массивы, указывающий на один или несколько элементов из XData или XDisplayData свойство HeatmapChart объект.

Пример: sorty(h,'MyColumnName') сортировка элементов в столбце с именем 'MyColumnName' в порядке возрастания.

Направление для сортировки, заданное как 'ascend', 'descend', массив ячеек из векторов символов или строковые массивы.

  • 'ascend' - Сортировка всех столбцов, перечисленных в column в порядке возрастания.

  • 'descend' - Сортировка всех столбцов, перечисленных в column в порядке убывания.

  • Массив - Сортировка в уникальном направлении для каждого столбца в column. Задайте direction как массив ячеек из векторов символов или строковые массивы, содержащий элементы 'ascend' или 'descend'. Массив должен быть такой же длины, как и column.

Пример: {'ascend','descend','ascend'} сортировка элементов в первом столбце в порядке возрастания. Если в первом столбце есть какие-либо повторяющиеся значения, то sorty разрывает связи с использованием элементов второго столбца в порядке убывания и так далее.

NaN размещение, заданное как одно из следующих значений:

  • 'auto' - Список NaN элементы являются последними для порядка возрастания и сначала для порядка убывания.

  • 'first' - Список NaN сначала элементы.

  • 'last' - Список NaN элементы last.

Пример: sortx(h,column,'MissingPlacement','last')

Выходные аргументы

свернуть все

Отсортированные данные о цвете, возвращенные как матрица. Значения в матрице появляются в том же порядке, в котором они появляются на тепловой карте.

The ColorDisplayData свойство HeatmapChart объект сохраняет отсортированные цветовые данные. The ColorData свойство сохраняет несортированные данные о цвете.

Переставленный порядок строк, возвращенный как массив ячеек из векторов символов.

The YDisplayData свойство HeatmapChart объект сохраняет сортированный порядок строк. The YData свойство сохраняет несортированный порядок строк.

Алгоритмы

The sorty функция устанавливает эти HeatmapChart свойства объекта:

  • YDisplayData - Свойство, которое хранит данные о оси Y.

  • ColorDisplayData - Свойство, которое хранит данные отображения цвета.

The sorty функция также сбрасывает YLimits свойство.

См. также

Функции

Свойства

Введенный в R2017b