By the way, you probably do not need to specify the ranges anyway. Just use:

plot_implicit(geometry.Circle(geometry.Point(1,1),2).equation())

On 27 June 2013 18:23, Stefan Krastanov <[email protected]> wrote:
> In sympy symbols are just instances of the `Symbol` class. Usually
> they are identified only by their name so `Symbol('x') == Symbol('x')`
> is always True and the two instances created by this expression
> evaluate in the same way, have the same hash, etc (and probably are
> the same datastructure in memory (there are some other details but
> they do not matter here)).
>
> The geometric module adds assumptions to these symbols (that they are
> real for instance). So now, because of issues surrounding our
> assumptions subsystem `Symbol('x') != Symbol('x', positive=True)`.
>
> So now the plotting module thinks that your expressions involve 4 symbols.
>
> What you can do is either get the symbols out of the equations with
> `equation().free_symbols` or specify the symbols to be used yourself
> with `equation(x=my_x_symbol, y=my_y_symbol)`.
>
> offtopic 1: you do not need to use `Eq(..., 0)`
>
> offtopic 2: do not use floats when you can use integers if you care
> about precision (sympy transforms integer division into rationals
> (infinite precision), but float division into high-but-not-infinite
> precision floats). This is especially true in geometry, when you do
> intersection checks.
>
> offtopic 3: try to send cleaned up minimal code samples, so it is
> easier to track down the problem
>
> offtopic 4: implementing a dedicated plotting helper for these objects
> would be many orders of magnitude faster than the raster implicit
> plotting.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sympy.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to