Ben
Ben

Reputation: 21695

How do I change the kernel bandwidth used in a density plot in R

How do I see what bandwidth gets used for kernels in a density plot and how do I specify a bandwidth to be used? I tried

ggplot(mtcars,aes(mpg))+geom_density(bw=1)

with no luck.

Upvotes: 18

Views: 16020

Answers (1)

geotheory
geotheory

Reputation: 23680

stat_geom utilises the adjust argument to apply a multiplier to the optimal bandwidth that ggplot calculates see documentation for density(). Try:

ggplot(mtcars,aes(mpg))+geom_density() + stat_density(adjust = 2)

I gather to determine the calculated optimal bandwidth - based on "the standard deviation of the smoothing kernel" - you'll need to interrogate Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. New York: Springer.

Upvotes: 14

Related Questions