Cómo trazar datos que se resumen en una ggplot2 en r

Una característica muy conveniente de ggplot2 es su gama de funciones de hacer un resumen de los datos de I en la trama. Esto significa que a menudo no tiene que pre-resumir sus datos. Por ejemplo, la altura de barras de un histograma indica el número de observaciones de algo que tiene en sus datos.

El resumen estadístico de esto es para contar las observaciones. Los estadísticos se refieren a este proceso como hurgar en la basura, y la estadística predeterminada para geom_bar () es stat_bin ().

Análogo a la forma en que cada geom tiene una estadística por defecto asociado, cada estadística también tiene un geom por defecto.

Por lo tanto, esto plantea la pregunta: ¿Cómo se decide si se debe utilizar un geom o una estadística? En teoría, no importa si se elige la geom o la estadística primera. En la práctica, sin embargo, a menudo es intuitivo para comenzar con un tipo de trama primero - en otras palabras, especificar un geom. Si a continuación desea agregar otra capa de resumen estadístico, utilizar una estadística.

En esta parcela, que utilizó los mismos datos para crear primero un diagrama de dispersión con geom_point () y después se ha añadido una línea suave con stat_smooth ().

Echar un vistazo a algunos ejemplos prácticos de la utilización stat funciones.

StatDescripciónpredeterminado Geom
stat_bin ()Cuenta el número de observaciones en bins.geom_bar ()
stat_smooth ()Crea una línea suave.geom_line ()
stat_sum ()Agrega valores.geom_point ()
stat_identity ()No hay un resumen. Parcelas de datos como se ofrecen.geom_point ()
stat_boxplot ()Resume datos para un gráfico de caja y bigotes.geom_boxplot ()
Como los datos papelera en ggplot2

Ya hemos visto cómo utilizar stat_bin () para resumir sus datos en los contenedores, ya que esta es la estadística por defecto de geom_bar (). Esto significa que las siguientes dos líneas de código producen parcelas idénticas:

gt; ggplot (temblores, aes (x = profundidad)) + geom_bar (binwidth = 50) gt; ggplot (temblores, aes (x = profundidad)) + stat_bin (binwidth = 50)

Cómo suavizar los datos R en ggplot2

los ggplot2 paquete también hace que sea muy fácil crear líneas de regresión a través de sus datos. Se utiliza el stat_smooth () función para crear este tipo de línea.

Lo interesante de stat_smooth () es que hace uso de la regresión local de forma predeterminada. R tiene varias funciones que pueden hacer esto, pero ggplot2 utiliza el loess() función para la regresión local. Esto significa que si usted desea crear un modelo de regresión lineal que tiene que contar stat_smooth () utilizar una función más suave diferente. Esto se hace con el método argumento.

Para ilustrar el uso de una más suave, comienza por crear un diagrama de dispersión de desempleo en el Longley conjunto de datos:

Video: GGPLOT2. Modificar nombre del gráfico y de los ejes

gt; ggplot (Longley, aes (x = Año, Y = empleado)) + geom_point ()

A continuación, agregar una más suave. Esto es tan simple como añadir stat_smooth () a su línea de código.

gt; ggplot (Longley, aes (x = Año, Y = PO)) ++ geom_point () + stat_smooth ()

Por último, decir stat_smooth para utilizar un modelo de regresión lineal. Esto se hace añadiendo el argumento method =”lm”.

gt; ggplot (Longley, aes (x = Año, Y = PO)) ++ geom_point () + stat_smooth (método ="lm")

Cómo saber ggplot2 a dejar sus datos no comprimidos

A veces uno no quiere ggplot2 para resumir los datos en la trama. Esto sucede generalmente cuando está ya pre-resume los datos o cuando cada línea de la trama de datos ha de ser trazada por separado. En estos casos, usted quiere decir ggplot2 no hacer nada en absoluto, y la estadística de hacerlo es stat_identity ().

Artículos Relacionados