|
From: Michael T. <mic...@gm...> - 2009-09-01 16:57:23
|
2009/9/1 John Hunter <jd...@gm...>:
> On Tue, Sep 1, 2009 at 10:32 AM, Michael Thompson<mic...@gm...> wrote:
>> Hi,
>> I'm trying to work on the canvas javascript backend I found here
>> [1]. I'm trying to add text but the canvas origin is at the top left,
>> how can I transform the co-ordinates from the matplotlib to canvas?
>>
>> def draw_text(self, gc, x, y, s, prop, angle, ismath=False):
>> ctx = self.ctx
>> ctx.font = "12px Times New Roman";
>> ctx.fillStyle = "Black";
>> ctx.fillText("%r" % s, x, y)
>>
>> [1] http://bitbucket.org/sanxiyn/matplotlib-canvas/src/80e9abf6d251/backend_canvas.py
>
> The backend canvas should know its height, so height-y should
> transform from bottom to top
Thanks, turns out to be a problem setting the size of the canvas
element that the javascript is rendered into. If self.flipy is set
then the text.py takes care of subtracting y from the height.
Next problem is the text alignment, look OK on the right axis but
wrong on the left I presume it's the alignment.
The documentation says that s should be a matplotlib.text.Text
instance and I can use s.get_horizontalalignment() but it seems that s
is a unicode string. How can I find the alignment I should set on the
text?
Michael
|