Here is another solution...
This may look cumbersome (to be honest it is), but basically this solution is relatively simple.
Since Geometry Nodes can only create text with the
String to Curves node, which does not accept fields as input, you would have to do the following:
- Since the
String to Curves node outputs each digit as an instance, simply create the numbers $0-9$ as well as the dot and reset their position to $(0,0,0)$.
- Then simply instantiate curves at the desired points, which themselves consist of as many points as the number of digits of your numbers (in this example I use four digits, as this allows numbers with two decimal places to be represented).
- At the points of these curves then instantiate the previously created numbers. By using the index of the points of each spline, and additionally the option Pick Instance as well as Instance Index you can then pick the desired number.
This could look something like this:
Useful note: In case you are wondering why this works when I use a float value as Instance Index: Funnily enough, when using the
Instance on Points node, the float value is not rounded up or down, but always rounded down, so all decimal places are truncated.
...and here is a further development of this approach, which can also handle different and multi-digit numerical values (currently no negative values though).
I'm working on it, but I thought it would be good to share this variant: