plotting – Rescale color function of multiple plots

I have 5 ListDensityPlots that are using the same color function but the color bar runs over a different range in every plot. For example here are two of the 5 plots that I have

enter image description here
enter image description here

I want these plots to have the same coloring as the following two plots

enter image description here
enter image description here

I know that I can rescale these plots using the Rescale function but am unsure of how to change the colors so that the colors show up in the same manner as the last two figures. Currently my code without using the Rescale function looks like the following for plotting:

rainbow(z_) := Blend({Black, Purple, Blue, Green, Yellow, Red}, z)

figure = ListDensityPlot(INSplot, PlotRange -> All, ColorFunction -> rainbow, LabelStyle -> {18, GrayLevel(0), Italic, 
FontFamily -> "Helvetica"}, FrameLabel -> {"(H,0,0) (r.l.u)", "(-H,2H,0) (r.l.u)", "3T, E = (0.6, 0.7) meV"}, 
PlotLegends -> Placed(BarLegend(Automatic, 
 LegendLabel -> 
  Placed(Rotate("Intensity (arb.unit.)", 90 Degree), Right
   ), 
 LabelStyle -> {18, GrayLevel(0), Italic, 
   FontFamily -> "Helvetica"}), Right))