from PyQt4.QtCoreimport *
from PyQt4.QtGuiimport *
from qgis.coreimport *
from qgis.guiimport *
# создание текстового элемента аннотации
textItem = QgsTextAnnotationItem( qgis.utils.iface.mapCanvas())# задаем положение маркера в координатах карты
textItem.setMapPosition(QgsPoint(739433,224091))# размер рамки
textItem.setFrameSize(QSizeF(200,100))# текст
textItem.setDocument(QTextDocument("This is my text item")))
textItem.update()
from PyQt4.QtCoreimport *
from PyQt4.QtGuiimport *
from qgis.coreimport *
from qgis.guiimport *
# аннотация в виде формы для активного слоя
formItem = QgsFormAnnotationItem( qgis.utils.iface.mapCanvas(), qgis.utils.iface.activeLayer())# положение маркера в координатах карты
formItem.setMapPosition(QgsPoint(696718,241215))# файл формы
formItem.setDesignerForm("/path/to/my/designerfile.ui");
formItem.update()