--
You received this message because you are subscribed to the Google Groups "MathJax Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mathjax-user...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Both JSXGraph and ASCIIsvg (or, more to the point, the current ASCIIMathML graphing routines) use a JavaScript-based syntax, including for the math expressions entered in plotting commands, but both offer some enhancements to this syntax, so that for example you can use "cos(x)" instead of "Math.cos(x)" and "x^3" instead of "Math.pow(x,3)" or "x*x*x". This enhanced syntax is intended to be calculator-based, but I hesitate to call it "standard" because there is no standard here. In the CAS world, there are significant differences, even at this level, between Maple and Mathematica syntax.
More interesting to me is the output format. Again, I can't speak with any authority about XYJax, but I do know how JSXGraph and ASCIIMathML graphing handle their output. JSXGraph is browser-aware and adapts its output to the capabilities of the browser, but notably has output modes for both HTML5 canvas and SVG. ASCIIMathML graphing routines are derived from ASCIIsvg which, as the name suggests, is intended to abbreviate SVG, albeit with some enhancements such as a "plot(...)" command so that you don't have to generate paths by hand, so its output is pure SVG. SVG is widely reusable -- it can be pasted into image manipulation software such as GIMP. SVG is also supported by ePub3.
As for getting these graphing routines working as MathJax input, I think the model we see already from JSXGraph and XYJax is more appropriate: make sure that MathJax can be used in appropriate places within the graphing libraries. I think including these as input for MathJax would bloat the MathJax library. I am working on getting MathJax working within ASCIIsvg, and have had some success, including with the newer graphing routines in ASCIIMathML -- the biggest problem I am having is with dynamically resizing the SVG foreignObject based on the size of the rendered MathJax (Davide -- if you are following this thread, expect an e-mail from me about this sooon).
https://github.com/leathrum/asciisvg-f
I do have some more recent tests that I will be posting there by the end of this weekend.