exponenta event banner

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.

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

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 элементы последние.

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

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

свернуть все

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

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

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

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

Алгоритмы

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

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

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

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

См. также

Функции

Свойства

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