exponenta event banner

sortx

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

Описание

пример

sortx(h,row) отображает элементы в row в порядке возрастания (слева направо). Эта функция сортирует элементы строк путем переупорядочивания столбцов. Определить row как один элемент или как массив элементов из YData. Если первая указанная строка имеет повторяющиеся значения, то sortx переставляет остальные столбцы в соответствии со второй строкой и т.д.

пример

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

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

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

пример

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

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

Примеры

свернуть все

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

Сначала создайте тепловую карту. Прочитать образец файла 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.

Сортировать значения в 'winter storm' чтобы они появлялись в порядке возрастания слева направо.

sortx(h,'winter storm')

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

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

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
sortx(h,'winter storm','descend')

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

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

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
sortx(h,{'unknown','earthquake'})

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

Создайте тепловую карту отключений утилит и сортируйте значения в 'winter storm' чтобы они отображались в порядке возрастания. Возвращает отсортированные цветовые данные и значения столбцов (значения x) в том порядке, в котором они отображаются вдоль оси X.

T = readtable('outages.csv');
h = heatmap(T,'Region','Cause');
[C,x] = sortx(h,'winter storm')

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

C = 10×5

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

x = 5x1 cell
    {'SouthWest'}
    {'MidWest'  }
    {'West'     }
    {'SouthEast'}
    {'NorthEast'}

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

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

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

Восстановите исходный порядок столбцов, установив XDisplayData имущества HeatmapChart объект, равный XData собственность.

h.XDisplayData = h.XData;

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

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

свернуть все

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

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

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

Направление для сортировки, указанное как одно из следующих значений:

  • 'ascend' - Сортировать все строки в row в порядке возрастания.

  • 'descend' - Сортировать все строки в row в порядке убывания.

  • Массив - сортировка в уникальном направлении для каждой строки в row. Определить direction как массив ячеек символьных векторов или строковый массив, содержащий элементы 'ascend' или 'descend'. Массив должен иметь ту же длину, что и row.

Пример: sortx(h,row,{'ascend','descend','ascend'}) сортировка элементов в первой строке в row в порядке возрастания. Если в первой строке имеются повторяющиеся значения, то она разрывает связи с использованием элементов второй строки в порядке убывания и так далее.

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

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

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

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

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

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

свернуть все

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

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

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

XDisplayData имущества HeatmapChart объект сохраняет порядок сортировки столбцов. XData свойство сохраняет порядок несортированных столбцов.

Алгоритмы

sortx наборы функций и запросы HeatmapChart свойства объекта:

  • XDisplayData - Свойство, хранящее данные оси X.

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

sortx функция также сбрасывает XLimits собственность.

См. также

Функции

Свойства

Представлен в R2017b