# Normalizing smoothhistogram curves

I'm looking for a way to get two smooth histogram curves to have the same max height. The plots are usually scaled by area or something, however, the only way I've been able to find that works is a really bad workaround. Anyone know of a better solution?

Original SmoothHistogram:

data = {RandomVariate[NormalDistribution[10, 2], 10000], RandomVariate[NormalDistribution[10, 0.7], 25000]^10/10^9}; SmoothHistogram[data, PlotStyle -> {Blue, Red}] Show[SmoothHistogram[data[], Automatic, "Intensity", PlotRange -> {{0, 100}, All}, PlotStyle -> Blue], SmoothHistogram[data[], Automatic, "Intensity", PlotRange -> All, PlotStyle -> Red] /. Line[x_] :> Line[{#[], 2.5 #[]} & /@ x]] • "The plots are usually scaled by area or something" ... Probability density functions integrate to 1. Using the maximum has no theoretical foundation. But you can always compute a SmoothKernelDistribution and plot it any way you like. May 11 '18 at 12:04

Plotting the PDFs of SmoothKernelDistributions using two vertical axes with different scales:

ClearAll[x]
skds = SmoothKernelDistribution /@ data;
maxvalues = NMaxValue[{PDF[#, x], 0 <= x <= 50}, x] & /@ skds
Plot[{PDF[skds[], x], PDF[skds[], x] (Divide @@ maxvalues)}, {x, 0, 50},
PlotRange -> All, Frame -> True, Filling -> Axis,
FrameLabel -> {{Style["PDF1", Blue], Style["PDF2", Red]}, {"x",  None}},
FrameStyle -> {{Blue, Red}, { Black, Black}},
PlotStyle -> {Blue, Red},
FrameTicks -> {{Automatic,
ChartingFindTicks[{0, maxvalues[]}, {0, maxvalues[]}][##] &},
{Automatic, Automatic}}] Update: An alternative way to get maxvalues:

 maxvalues2  =  Max @ #["PDFValues"] & /@ skds

 {0.197102, 0.0681705}
`