[HN Gopher] Desmos 3D graphing calculator ___________________________________________________________________ Desmos 3D graphing calculator Author : benpm Score : 188 points Date : 2023-10-12 16:05 UTC (4 hours ago) (HTM) web link (www.desmos.com) (TXT) w3m dump (www.desmos.com) | titaniumtown wrote: | Desmos is the best, free (as in cost) and easily accessible | graphing calculator out there. I wish it was opensource though. | I've even tried to make an alternative and it's really hard to | match their functionality (or I'm just inexperienced). I hope an | opensource alternative crops up. | | Edit: Seems there has https://www.geogebra.org/ | knlje wrote: | I've been using GeoGebra for years. I have tried Desmos twice | but couldn't immediately spot the differences. What are the | benefits of Desmos over GeoGebra? | titaniumtown wrote: | I haven't heard of GeoGebra before! Really cool. Thanks for | pointing that out. | drsopp wrote: | I just want to chime in on Geogebra. I used it (was more or | less forced to) when teaching math in high school for about | 12 years. It is great for guided exploration, but it is | very buggy. I am confident many students must have lost | points in their math exams because of some of those bugs. | lights0123 wrote: | Desmos has a far smoother UI. Geogebra will often convert | equations into its own format after clicking away from the | equation editor, and if you mistyped or want to change the | structure you must erase and re-type the whole thing--for | example, typing f(x) will convert the equation into its own | format where you can't edit parameters or the function name. | Desmos leaves your input as text, allowing you to change | input at the character level. From my high school experience | where both were used frequently, a lot of frustration was | expressed with Geogebra where missing a parenthesis forced | you to re-type the entire equation since it often assumed the | bulk of your equation was a parameter, and there was no way | to correct it. | nsajko wrote: | > frustration was expressed with Geogebra where missing a | parenthesis forced you to re-type the entire equation since | it often assumed the bulk of your equation was a parameter, | and there was no way to correct it. | | I believe this may simply be a case of not knowing Geogebra | well, or it's simply caused by differences in taste/being | accustomed to a single user interface. In my experience, | Geogebra offers the ability to edit the source of any | object after selecting its settings. So it was just two | clicks away. | | This is Geogebra the Electron app, though, I think there's | also a Web app and I think there was also a Java app some | time before. | namibj wrote: | GeoGebra is the closest I know, at least when limiting to | copyleft [or theoretically the SQLite model would be fine, but | it's pretty unique in dependability and selflessness for open | source projects not subject to copyleft] "middle/high school | (constructive?) geometry & function graphing teaching aid" | classroom-grade robustness: bored & curious children are | somewhat creative in their play/"(ab)use" of teaching/classroom | software: buggy/anti-intuitive software can't survive the | combination of: | | - bored curious children playing around, bright and capable | curious children exploring (way) beyond what the teacher | explained, - normal students just getting by with the topic and | relying on the software to aid their subject matter | comprehension, - and teachers trying to plan lessons around it | where they have to rely on it not needing a tutorial because | there wouldn't really be time for such in the curriculum | schedule. | Xerox9213 wrote: | One of my favourite things about (desktop) Geogebra is its | ability to export to tikz. Making complicated geometric | shapes in a latex file can be done so easily with Geogebra. | Perhaps not as elegant as Castel, but still quite nice. | | https://castel.dev/post/lecture-notes-1/ | omneity wrote: | I've been using Geogebra since it was recommended to me by my | high-school math teacher, what feels like almost a century ago. | | It never disappointed! | | Desmos looks like a solid spiritual successor, if it wasn't | closed source. | BD103 wrote: | Desmos does have a Github page, but unfortunately the main | codebase is not public. Their API docs are well written, | though, so it's really easy to embed Desmos into your site. | | [^1]: https://github.com/desmosinc | | [^2]: https://www.desmos.com/api/v1.8/docs/index.html | soegaard wrote: | Commercial usage og Geogebra needs a license. | | https://www.geogebra.org/m/pR5DME5S#material/yumfrbjr | | I don't understand how their license and the GPL can co-exist? | WhereIsTheTruth wrote: | Wow this is painfully slow, the CPU usage for rotating the scene | is insane, I can't look at the code right now but wow.. I expect | better from them | | EDIT: If you are using Chrome, make sure you are on the latest | version, the latest v118 fixed it for me | amanj41 wrote: | Could you share what function you plotted? A very simple z = | x^2 + y^2 worked fine so I'm curious where its limits are | harmonium1729 wrote: | Curious - do you have hardware acceleration disabled? Rotating | the scene shouldn't be hammering the CPU if hardware | acceleration is enabled. [disclaimer: I work at Desmos] | WhereIsTheTruth wrote: | I was using Chrome 117, looks like there was a new 118 | update, it now is butter smooth! | | Looks like 117 was just broken | harmonium1729 wrote: | Nice! Really good to know. We'll add that to our list of | device/browser combos that might cause trouble so that at | minimum we can warn folks. It's an early beta so we're | enthusiastically collecting any examples (system | configurations and also graphs) that cause problems, so if | you see anything amiss we'd love to hear about it | (feedback@desmos.com). [disclaimer: I work at Desmos] | Kon-Peki wrote: | Since you work at Desmos: is there any way to have | animated variables start/stop based on the value of some | other variable? Or functions that graph different | formulas based on a conditional? Etc. | | For example, variable X is continuously cycling between | -10 and +10, but only when variable D is > 1. At my son's | school, there is a kind of interactive demoscene going on | using Desmos (the kids believe that the school cannot | block Desmos from the Chromebooks, therefore they will | always have it available). | harmonium1729 wrote: | Fun question. There are a couple options: | | (1) the more straightforward (but less powerful) option | is to use the dynamic bounds for a slider. Here, "a" is | set to animate, but the bounds don't let it move if b=0: | https://www.desmos.com/calculator/mqhhpso67r | | (2) the more general feature that allows for complex | scripting behavior is called "actions." Here's an example | that uses that, where it's more of a genuine play/pause: | https://www.desmos.com/calculator/gzqwx36lo0 | | It's a beta feature that needs to be enabled, but anyone | can turn it on. More here: https://help.desmos.com/hc/en- | us/articles/4407725009165-Acti... | Kon-Peki wrote: | Thanks! I will pass those on | TrackerFF wrote: | Smooth as butter here, instant changes and fast rendering. | v117.0.5938.152 | HeWhoLurksLate wrote: | Desmos is honestly probably one of the best things to come out of | the web- it's an impressive tool and I am truly thankful for all | the insight it's given me in my mathematics classes. Super stoked | to see what bananas things the desmos community makes with this! | KeplerBoy wrote: | what's the relationship between desmos and geogebra? is one a | fork of the other one? | lights0123 wrote: | There is none, just competing products. | namibj wrote: | I don't think their codebases are particularly connected: AFAIK | Desmos is a client-side browser app, so the software is | distributed to the user for using in that way, which seems | incompatible with the GPL3+ licensing of the GeoGebra codebase. | | https://github.com/geogebra/geogebra | chaosprint wrote: | Curious if this is using WebGPU | luketaylor wrote: | It's WebGL, not WebGPU | WithinReason wrote: | Well it passes the sin(x)sin(y)sin(z)>0.1 test | | Edit: also sin(x)sin(y)sin(z)+0.1sin(10x)sin(10y)sin(10z)>0.1 | | https://www.desmos.com/3d/85d41ad6c6 | westurner wrote: | ENH: desmos [3d]: Support complex exponents; with i and/or a | complex() function | | Test equations for _geogebra_ : equation -- | what I think it looks like xi^2 -- Integer coordinate | grid e^xpi -- Unit circle with another little circle | also about the origin (0,0) e^(pi^x) -- crash / not | responding: a(x)=e^(pi^(x)) though it seems | to work with x in Z+ e**(x*pi*I) e^(x p | i^p) -- somewhat scale-invariant interposed spirals around a | single point attractor. (Zoom in/out) | | Only SageMath preprocesses Python to replace XOR (^) with exp() | or **, so: f(x) = x^2 g(x) = x**2 # | Python h(x) = exp(x, 2) x**2 # SymPy Gamma, | Beta x**math.pi # Python: 3.141592653589793 | x**pi # SymPy: p x**1j # Python | x**I # SymPy x**(1+I) # BUG/ENH: Plot | complex expressions with SymPy import sympy as sy | display(sy.E, sy.I, sy.pi) from sympy import E, pi, I | x,y = sy.symbols('x,y', real=True); display(x,y) eq01 = | sy.Eq(y, E**(x*pi*I)); display(eq01) eq02 = sy.Rel(y, | E**(x*pi*I), '=='); display(eq02) func01 = | sy.Function('f')(E**(x*pi*I)); display(func01) func02 = | sy.Function('f')(eq02.rhs); display(func02) assert eq01 | == eq01 assert func01 == func02 import | unittest test = unittest.TestCase() | test.assertEqual(eq01, eq02) test.assertEqual(func01, | func02) | | Sympy Gamma: https://gamma.sympy.org/ | | Sympy Beta is SymPy Gamma compiled to WASM: | https://github.com/eagleoflqj/sympy_beta | | What methods for visualizing complex coordinate(s) are helpful? | You can map the complex coordinate into e.g. the z-axis; or is | complex phase - as is necessary to model [qubit] wave functions | psi - just another high-dimensional dimension to also | visualize? | RichieAHB wrote: | My phone gets pretty warm when I zoom out but the UI remains | nice and responsive ... | xchkr1337 wrote: | the actual rendering code is ran using a webworker in a | separate thread | andybak wrote: | The equation editor is so intuitive. Here's something I got from | just typing in stuff and tweaking it: | https://www.desmos.com/3d/6f4cd9930d | zem wrote: | didn't realise desmos had a desktop client, but i've been a happy | user of their android app for years. best calculator on android | by far. | acc_297 wrote: | Desmos has had a place in my bookmark bar for years now this is a | very cool addition. | Aardwolf wrote: | This is fantastic! So easy to move, zoom and rotate the graph | with exactly the mouse buttons you'd expect. In most even | commercial math packages this is always super clunky | mkishi wrote: | How does one move with the mouse? I could only find gestures | for rotation and zoom; for movement I had to resort to manually | entering coordinates in the settings. | anthk wrote: | I like calc paired with gnuplot. | | https://github.com/lcn2/calc | | inb4 dc(1)/bc(1)... calc supports complex numbers, C-like pseudo | structures/functions, custom decimal points and lots more. | | Also, calc/gnuplot will run on a toaster or even legacy systems | from 20-25 years ago. | dang wrote: | Related: https://blog.desmos.com/articles/beta-3d-release/ | | (via https://news.ycombinator.com/item?id=37771661, but no thread | there) | amathprof wrote: | This looks nice, and I could see using it in some cases when I | teach 3D functions, especially for complex functions that require | more accuracy. But when introducing 3D it's often nicer to have | graphs that showing gridding rather than smooth curves. For most | purposes I'll probably stick to CalcPlot3D. It also has some nice | features for showing points and vectors on a function, doing | contour plots, and a nice surface of revolution visualization. | | https://c3d.libretexts.org/CalcPlot3D/index.html | tanvach wrote: | There are a bunch of YouTubers making Desmos animations. I | haven't played with it myself, but always find it fascinating | with what people come up with. | | https://youtu.be/4_8eY_Ij-5k | soegaard wrote: | Is Desmos open source ? | | What's the pricing for commercial partners? | creata wrote: | Can someone here explain how this works? | | I'm not sure how reliable it is, but here's[1] an old Reddit | comment describing the method that Desmos (2D) uses. That method | works in 3D, so maybe Desmos 3D uses it, too. | | [1]: https://www.reddit.com/r/desmos/comments/qlhmbc | ChuckMcM wrote: | Fun, there was a program for the Amiga called "Doug's Math | Aquarium" which I found to be pretty neat, it has a lot of that | feel. Don't know how to get it to insert i (aka sqrt(-1)) but | that can be worked around. Another fun thing would be color | gradient for magnitude. Definitely fun times and super quick. | JohnScolaro wrote: | I can't wait to play Super Mario in this when someone inevitably | makes a 3D rendering engine in it. | tabiv wrote: | This is my favorite online graphing calculator. It's been around | for a while. It got me through pre-calculus. | mhh__ wrote: | I use it for (some) quant finance work. It's not a toy, | shockingly versatile. | iandanforth wrote: | Thank you to whomever thought about gimbal lock when designing | the rotate controls. | agentbellnorm wrote: | I've been using their 2d graphing calculator since college and | love it | njn wrote: | This is very cool. I'm involved with an open source project | that's similar to this, called 3Demos: | https://3demos.ctl.columbia.edu/ | | On github at https://github.com/ccnmtl/3demos ___________________________________________________________________ (page generated 2023-10-12 21:00 UTC)