I'm looking for a way to insert added text into a histogram with by graphs, such that the added text contains a statistic specific to each by graph. I had done this a brute-force kind of way for the first set of graphs I needed by looping over each category, saving its graph, and then using graph combine. that worked well. however, i suspect there is a more efficient way but haven't had much luck searching through the statalist archives. apologies if i missed someone offering their brilliant solution in the past...

So, the first set of graphs I created w/o any problem using my brute-force solution is below
(where a1 is the string variable containing the governorate name, f1=1 is a completed interview)
Code:
foreach l in local govern {
preserve
keep if a1=="`l'" & f1==1
...
count if pmatch>=.85
local matches=`r(N)'
count if f1==1
local denom=`r(N)'
local number=(`matches'/`denom')*100
hist pmatch, bin(25) title(`l') xline(.85) saving("$qc\pmatch_`l'.gph", replace) color(%75)  ///
            xlabel(0(.1)1, labsize(tiny)) ylabel(0(2)10, labsize(tiny)) text(8 0.85 "Percent of" "near-duplicates:" "{bf:`: di %2.0f `number''%}", size(vsmall) placement(e))
...
restore
}

I'm now trying to do something similar, but with a very large number of by graphs (as in the below), and would like the analogous added text for each one...whereas in the above, I was making graphs for each geographic region, in the code below I am trying to make a single graph for each region with by graphs by interviewer within each region. In other words, within a new loop, I want to write something like this:
Code:
hist pmatch if a1=="`l'", by(interviewer)
(where `l' is the governorate name), but then add something within the loop and/or command so that each by-graph would have the added text that pertains to each interviewer. If I had to duplicate the approach above and created a nested loop for levels of the interviewer variable, writing the command itself would not be overly cumbersome albeit inelegant (and create dozens of saved graphs) but I am suspecting that there is a much more efficient and less manual solution out there.

Appreciate any assistance or links to solutions already posted I may have missed.