On Monday, April 27, 2015 at 4:45:42 AM UTC-4, Martin R wrote:
>
> Is there any concise description (possibly proposed) of what the different
> output functions should do? I know of the following functions, and have my
> personal expectations, but I'd be interested in others:
> __repr__
> print
>
We should be able to agree on these as they are part of the plain Python
language.
* __repr__ (or SageObject._repr_): return a string
* print:Immediately sends the output of __repr__ to stdout
* displayhook: calls __repr__ on the value of the last statement and sends
to stdout
>>>: 123
123 <-- displayhook at work
In Sage, the displayhook does more refined things like
sage: plot(sin)
Launched png viewer for Graphics object consisting of 1 graphics primitive
or displaying the graphics inline in various notebooks.
show
> pretty_print
Now (#17821): show = pretty_print is like print() but with rich output, so
sage: def f():
...: print(123)
...: pretty_print(plot(sin))
sage: f()
123
Launched png viewer for Graphics object consisting of 1 graphics primitive
Before #17821: show and pretty_print does slightly different and, at least
to me, not very self-explanatory things. For example, in the SageNB
notebook:
g = Graph({1:[2]})
g # a picture of the graph created using tkz -> pdf -> png if
the "typeset" checkbox is on
show(g) # a picture of the graph created with matplotlib
pretty_print(g) # tkz picture again, but this time regardless of the
"typeset" checkbox setting
show(WeylCharacterRing('E8')) # a png picture containing the words "the
Weyl Character Ring..."
> latex
>
ascii_art
plot
latex() returns a latex code object containing code suitable for
typesetting in a math environment.
ascii_art() returns an ascii art object that can be used as building block
for building larger ascii art displays
plot() returns a graphics object that can be saved or composed into more
complicate graphics
--
You received this message because you are subscribed to the Google Groups
"sage-devel" 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/sage-devel.
For more options, visit https://groups.google.com/d/optout.