I stumbled on this question after answering another of your questions and thought it was interesting.
Is this what you're after?

Key Elements:
The key elements of creating the elevated annotation are:
xref and yref are set to 'paper', thus using the graph's background for xy coordinates rather than graph data values
- Using > 1.00 for the
y positioning
layout['margin'] top set to a value to create a top margin, thus pushing the graph area down
Sample Code:
It's really much simpler than it looks.
import numpy as np
from plotly.offline import iplot
# Create the dataset.
n = 360
x = np.arange(n)
y = [np.sin(i*(np.pi/180)) for i in range(n)]
# Plot the sin wave.
data = []
data.append({'x': x,
'y': y})
# Create the annotations.
notes = []
notes.append({'text': ('An annotation at the top of the graph.<br><br>'
'And some more rambling text to take up some '
'more space on the graph to represent<br>'
'a longer annotation, just because we can.<br><br>'
'And one more for good measure.'),
'x': 0.00,
'y': 1.60,
'xref': 'paper',
'yref': 'paper',
'showarrow': False,
'align': 'left'})
notes.append({'text': 'Elevated Graph Annotation Example',
'x': 0.00,
'y': 1.15,
'xref': 'paper',
'yref': 'paper',
'showarrow': False,
'font': {'size': 18}})
# Setup the layout.
layout = {}
layout['annotations'] = notes
layout['margin'] = {'t': 175}
# Plot the data. (May also use `plot` rather than `iplot`)
iplot({'data': data, 'layout': layout})
Note:
You'll have to create your own graph title (rather than relying on the title parameter available in layout) as you'll need to position the graph title yourself. Otherwise the automatic title and annotations will overlap.