'A node with a unique id in the graph.
Node.id is drawn as a text label, unless optional parameter text=False.
Optional parameters include: fill, stroke, strokewidth, text, font, fontsize, fontweight.'

def __init__(self, id='', radius=5, **kwargs):

    self.graph = None
    self.links = Links()
    self.id = id
    self._x = 0.0
    self._y = 0.0
    self.force = Vector(0.0, 0.0)
    self.radius = radius
    self.fixed = kwargs.pop('fixed', False)
    self.fill = kwargs.pop('fill', None)
    self.stroke = kwargs.pop('stroke', (0, 0, 0, 1))
    self.strokewidth = kwargs.pop('strokewidth', 1)
    self.text = ((kwargs.get('text', True) and Text(((isinstance(id, unicode) and id) or str(id).decode('utf-8', 'ignore')), width=85, fill=kwargs.pop('text', (0, 0, 0, 1)), fontsize=kwargs.pop('fontsize', 11), **kwargs)) or None)
    self._weight = None
    self._centrality = None
