And in case you don't know this, potentiometers can have tolerances as bad as 20 (or even 30) % so you'll, likely, need to add some trimmers in there to get the right values.
Attached is a version that is not so sensitive to potentiometer tolerance or even resistance value (will work with a wide range of pot values, so things like current drain and noise immunity will drive component selection.
Also, this circuit is actually a voltage to current converter, so if you have an application that needs to monitor a voltage and convert it into a 4-20ma signal, then this circuit will fit the bill.
To figure out the values of the resistors, R3 is what converts the input voltage into a current. The op-amp will do it's best to keep the voltage across R3 the same as the voltage on it's non-inverting '+' input -- lets call that Vin+. So, the current in the send loop is given by: I = Vin+/R3. So, just choose R3, then choose values for R4,R5,R6 that will produce a voltage range that will result in a 4-20ma range for 'I'. The trick for choosing R3 is to have Vin+ not go too low, such that it will be in conflict with noise (environment and circuit layout will determine that), and not too high that it will too much limit the range of voltage in the current send loop. OR if monitoring a voltage, then it's range will influence the selection of R3 (and some voltage translation might be necessary).
Also, use a high beta transistor, as the current in the loop, IC, is actually IE - IB. It's up to you to determine how critical this error is. A good high beta transistor is the 2N5089 (or even the 2N5088). Or you could even use a Darlington (with a slight loss in current loop voltage range), but in most cases that would probably be overkill.