Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Controlar la visualización de histograma categórico

En este ejemplo se muestra cómo usar para ver eficazmente los datos categóricos.histogram Puede utilizar los pares nombre-valor y cambiar la visualización de un histograma categórico.'NumDisplayBins''DisplayOrder''ShowOthers' Estas opciones le ayudan a organizar mejor los datos y a reducir el ruido en la gráfica.

Crear histograma categórico

El archivo de ejemplo contiene datos que representan interrupciones de la utilidad eléctrica en los Estados Unidos.outages.csv El archivo contiene seis columnas:,,,, y.RegionOutageTimeLossCustomersRestorationTimeCause

Lea el archivo como una tabla.outages.csv Utilice la opción para especificar el tipo de datos que contiene cada columna: categórico (), de punto flotante numérico () o DateTime ().'Format''%C''%f''%D' Índice en las primeras filas de datos para ver las variables.

data_formats = '%C%D%f%f%D%C'; C = readtable('outages.csv','Format',data_formats); first_few_rows = C(1:10,:)
first_few_rows=10×6 table
     Region         OutageTime        Loss     Customers     RestorationTime          Cause     
    _________    ________________    ______    __________    ________________    _______________

    SouthWest    2002-02-01 12:18    458.98    1.8202e+06    2002-02-07 16:50    winter storm   
    SouthEast    2003-01-23 00:49    530.14    2.1204e+05                 NaT    winter storm   
    SouthEast    2003-02-07 21:15     289.4    1.4294e+05    2003-02-17 08:14    winter storm   
    West         2004-04-06 05:44    434.81    3.4037e+05    2004-04-06 06:10    equipment fault
    MidWest      2002-03-16 06:18    186.44    2.1275e+05    2002-03-18 23:23    severe storm   
    West         2003-06-18 02:49         0             0    2003-06-18 10:54    attack         
    West         2004-06-20 14:39    231.29           NaN    2004-06-20 19:16    equipment fault
    West         2002-06-06 19:28    311.86           NaN    2002-06-07 00:51    equipment fault
    NorthEast    2003-07-16 16:23    239.93         49434    2003-07-17 01:12    fire           
    MidWest      2004-09-27 11:09    286.72         66104    2004-09-27 16:37    equipment fault

Trace un histograma categórico de la variable.Cause Especifique un argumento de salida para devolver un identificador al objeto de histograma.

h = histogram(C.Cause); xlabel('Cause of Outage') ylabel('Frequency') title('Most Common Power Outage Causes')

Cambie la normalización del histograma para utilizar la normalización, que muestra la frecuencia relativa de cada causa de interrupción.'probability'

h.Normalization = 'probability'; ylabel('Relative Frequency')

Cambiar orden de visualización

Utilice la opción para ordenar las ubicaciones de mayor a menor.'DisplayOrder'

h.DisplayOrder = 'descend';

Truncar número de barras mostradas

Utilice la opción para mostrar solo tres barras en la gráfica.'NumDisplayBins' Las probabilidades mostradas ya no se agregan a 1, ya que los datos no mostrados todavía se tienen en cuenta para la normalización.

h.NumDisplayBins = 3;

Resumir datos excluidos

Utilice la opción para resumir todas las barras excluidas, de modo que las probabilidades mostradas se agreguen de nuevo a 1.'ShowOthers'

h.ShowOthers = 'on';

Limite la normalización para visualizar datos

Antes de R2017a, las funciones y solo usaban datos para calcular las normalizaciones.histogramhistcountsbinned Este comportamiento significaba que si algunos de los datos terminaban fuera de las ubicaciones, se ignoraba para fines de normalización. Sin embargo, en MATLAB® R2017a, el comportamiento cambió para normalizarse siempre utilizando el número total de elementos de los datos de entrada. El nuevo comportamiento es más intuitivo, pero si prefiere el comportamiento anterior, debe realizar algunos pasos especiales para limitar la normalización solo a los datos en carpetas.

En lugar de normalizar todos los datos de entrada, puede limitar la normalización de la probabilidad a los datos que se muestran en el histograma. Simplemente actualice la propiedad del objeto de histograma para eliminar las otras categorías.Data La propiedad refleja las categorías mostradas en el histograma.Categories Se usa para comparar los dos valores de propiedad y quitar cualquier categoría de que no está en.setdiffDataCategories A continuación, quite todos los elementos categóricos resultantes de los datos, dejando solo los elementos en las categorías mostradas.undefined

h.ShowOthers = 'off'; cats_to_remove = setdiff(categories(h.Data),h.Categories); h.Data = removecats(h.Data,cats_to_remove); h.Data = rmmissing(h.Data);

La normalización se basa ahora solo en las tres categorías restantes, por lo que las tres barras se agregan a 1.

Consulte también

| |