Ideally implitic_plot should be able to do it. The plot comes from a paper whose algorithm was implemented in a GSoC project https://github.com/sympy/sympy/wiki/GSoC-2012-Report-Bharath-M-R:-Implicit-plotting.
Aaron Meurer On Tue, May 12, 2015 at 12:45 PM, Sumith 1896 <[email protected]> wrote: > Is there a need for an issue to be opened? > > > On Tue, May 12, 2015 at 10:59 PM Peter Brady <[email protected]> wrote: >> >> Just tried: >> >> In [1]: from sympy import * >> >> In [3]: x,y = symbols("x y") >> >> In [11]: rhs = >> floor(Mod(floor(y/17)*2**(-17*floor(x)-Mod(floor(y),17)),2)) >> >> In [14]: s = "960 939 379 918 958 884 971 672 962 127 852 754 715 004 339 >> 660 129 306 651 505 519 271 702 802 395 266 424 689 642 842 174 350 718 121 >> 267 153 782 770 623 355 993 237 280 874 144 307 891 325 963 941 337 723 487 >> 857 735 749 823 926 629 715 517 173 716 995 165 232 890 538 221 612 403 238 >> 855 866 184 013 235 585 136 048 828 693 337 902 491 454 229 288 667 081 096 >> 184 496 091 705 183 454 067 827 731 551 705 405 381 627 380 967 602 565 625 >> 016 981 482 083 418 783 163 849 115 590 225 610 003 652 351 370 343 874 461 >> 848 378 737 238 198 224 849 863 465 033 159 410 054 974 700 593 138 339 226 >> 497 249 461 751 545 728 366 702 369 745 461 014 655 997 933 798 537 483 143 >> 786 841 806 593 422 227 898 388 722 980 000 748 404 719".replace(" ", "") >> >> In [16]: k = S(s) >> >> In [17]: plot_ >> plot_backends plot_implicit >> >> In [17]: plot_implicit(S(1/2) < rhs, (x, 0, 106), (y, k, k+17)) >> /home/ptb/gitrepos/sympy/sympy/plotting/plot_implicit.py:84: UserWarning: >> Adaptive meshing could not be applied to the expression. Using uniform >> meshing. >> warnings.warn("Adaptive meshing could not be applied to the" >> >> I then got a lot of errors that started with: >> >> >> --------------------------------------------------------------------------- >> ValueError Traceback (most recent call >> last) >> /home/ptb/gitrepos/sympy/sympy/plotting/experimental_lambdify.py in >> __call__(self, *args) >> 118 temp_args = (np.array(a, dtype=np.complex) for a in >> args) >> --> 119 results = self.vector_func(*temp_args) >> 120 results = np.ma.masked_where( >> >> <string> in <lambda>(x0, x1) >> >> and ended with >> >> /home/ptb/gitrepos/sympy/sympy/sets/sets.py in __new__(cls, *args, >> **kwargs) >> 1684 evaluate = kwargs.get('evaluate', global_evaluate[0]) >> 1685 if evaluate: >> -> 1686 args = list(map(sympify, args)) >> 1687 >> 1688 if len(args) == 0: >> >> RuntimeError: maximum recursion depth exceeded >> >> >> On Tuesday, May 12, 2015 at 11:22:14 AM UTC-6, Ondřej Čertík wrote: >>> >>> On Tue, May 12, 2015 at 10:00 AM, Sumith 1896 <[email protected]> wrote: >>> > Hi there, >>> > I just happened to come across this very interesting formula known as >>> > Tupper’s self-referential formula. >>> > The wiki article says that is a formula defined by Jeff Tupper that, >>> > when graphed in two dimensions at a very specific location in the >>> > plane, can >>> > be “programmed” to visually reproduce the formula itself. >>> > Matlab is capable to plot this. It was very interesting to see the >>> > plot. >>> > Is our plotting module capable to plot this? >>> > If yes, could you say how? >>> >>> >>> Good question, we should be able to do it. I found more info about this: >>> >>> >>> http://www.quora.com/How-did-Jeff-Tupper-come-up-with-his-%E2%80%9Cself-referential%E2%80%9D-formula >>> >>> With some other examples. >>> >>> Ondrej >> >> -- >> 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. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/e6b490d0-5d76-4f83-ac41-3c05cccb3a2a%40googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. > > -- > 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. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/CAFeyqwM_GfnfbOLLjX1E2rYCuEqUmKLHo3R1a2eHTFKL%2BOzRSQ%40mail.gmail.com. > > For more options, visit https://groups.google.com/d/optout. -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2B4ttzQ0PfFM8MtpT6s7DUxTyRzMMAKNzVOJakVkGbuMw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
