I'm designing a dashboard that captures temperature at multiple locations (L1-L5). At the same time, I want to show the amount of staff that have been in these locations. Right now I've indicated them in the blue circles. Is there a better way that this amount could be represented in the bar graph below, or is there a better type of graph suited for this?
If you need to show correlation (or lack of it) between two sets of data like this, a dual-axis chart can do that. Here, the blobs are shown on the right-hand axis
(What I can't do easily is put the coloured bars in the background, which should really correspond to the heat axis rather than be of equal width.)
I assume that the boundaries of your temperature categories are significant, and related to the purpose of collecting and analysing the data: maybe you have a target to minimise the number of staff working in a 'very high' temperature, for example. In that case the exact temperature measurement may be less important than the numbers in each category. Maybe you could present this as a table:
Alternatively if you want to keep a graphical representation of the actual temperatures, use a bubble chart as user155100 suggests:
The colours, and the bubble size in the case of the chart, draw the eye to the information of most concern. (Note, I've followed the colour scheme from your question, which may not be ideal for colourblind users. Also the horizontal axis labels of the chart should be the location names.)
As was mentioned in a comment, it's questionable whether a bar chart makes sense for showing temperatures because 'zero' is an arbitrary point, unless your values are in Kelvin.
I actually like your representation, it is clear and easy to perceive and parse. It lacks only a visual reminder of what the number buble represents.
This can be solved by adding an icon to the number bubble to show that you are showing something related to people there. Something like a small stickman - here graphics designers can shine :-)
Of course, the form of the bubble has to change, as the stickman (or whatever) has to go into the bubble as well.
Regarding dicplaying the numbers below the graph: This puts that information very far away from the rest. It will be easily overlooked.
As some comments already said, your own representation already does most things right and doesn't seem to need much change.
My only suggestion would be visually convey the staff amount, rather than only as a number. That way you can already process the core message of the data at one glance, before you even interpret all the numbers. Because big = many.
And add a description somewhere, what this icon + number actually mean.
You could try making a scatter plot such as Nathan suggested, with Heat index on the Y axis and Location Labels on the X, then use a Bubble with a number in the center for the count of people in each location. Possibly even scaling the size of the dot based on the Staff counted.
The site Gapminder has a pretty good example:
To minimize the elapsed time it takes a viewer to orient and interpret the graph I would simply encode the staffing level into the color saturation of each bar; deeper the color the more staff.
If it's still important to retain the precise staffing number, do so with a simple text annotation at the bottom of each bar. (Use the full saturation color for this text; the left-most bar should read "19 staff members", while the other bars should just say "16" or "10" and so on. This embeds the legend into the graphic instead of causing the reader's eyes to flick back and forth).
Your graphic is very functional as is - I wouldn't go chasing a complete re-design or switch graph types. Double bar could be good, but is a bit less elegant I guess, and will take a greater elapsed time for the viewer to interpret. And I wouldn't disturb humans' intuitive ordering of the Ls (L1 to L5) by ordering them based on size or anything else (unless L1 -L5 are just example names).