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[[1]], Automatic, "Intensity", PlotRange -> {{0, 100}, All}, PlotStyle -> Blue], SmoothHistogram[data[[2]], Automatic, "Intensity", PlotRange -> All, PlotStyle -> Red] /. Line[x_] :> Line[{#[[1]], 2.5 #[[2]]} & /@ 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. Commented May 11, 2018 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[[1]], x], PDF[skds[[2]], 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[[1]]}, {0, maxvalues[[2]]}][##] &},
{Automatic, Automatic}}]


Update: An alternative way to get maxvalues:

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

 {0.197102, 0.0681705}
`