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.