The main challenge with inline editing are:
- Clarity of state/When does system save
For discoverability, you want to bring up the field outlines when the user moves around naturally. In your example, I would suggest do it on mouse over of the specific bar in the graph and not just the text label. Then on click it should become edit field.
For save, you have two options:
- Auto-save : On mouse out, auto-save and transition the field to a display. This communicates the state change to the user. But auto-save comes with a lot of baggage - it should be consitently applies and you have to handle undos.
- On mouse out, if the value of the field has changed, keep it as a text field. This tells the user that information has not been saved. This is simpler to implement.
I have used this approach a lot. A product that I designed a while back is a survey creation tool - http://Insightify.com . There I wanted to get a preview of the survey as the user is building it, so inline editing like you described was applied extensively. The user feedback has been great.