# How to get data points from plot?

• Mathematica
Hi PF!

I used NDSolve to find the solution to a differential equation. I then plotted the solution in mathematica. However, I would like to be able to plot this in LaTex, specifically in TikZ. Can anyone help me here?

Thanks so much!

Simon Bridge
Homework Helper
It is usually better to get a screen grab of your plot then embed in your LaTeX document as a graphic.

Dale
Mentor
2020 Award
Hi PF!

I used NDSolve to find the solution to a differential equation. I then plotted the solution in mathematica. However, I would like to be able to plot this in LaTex, specifically in TikZ. Can anyone help me here?

Thanks so much!
The output of NDSolve is an InterpolatingFunction object. If the InterpolatingFunction object is named "f" then "f[]" will produce a table containing the interpolation points.

The output of NDSolve is an InterpolatingFunction object. If the InterpolatingFunction object is named "f" then "f[]" will produce a table containing the interpolation points.
Hi Dale!

I have the following code
Code:
a=0;
s = NDSolve[{y[x] y''[x] + 2 (y'[x])^2 + x y'[x] - 2 a/(1 + a) y[x] ==
0, y == .0000000000001, y' == -1/2}, y, {x, 0, 3/2}];
s[]
but then I receive the response "Part 2 of..." followed by a long error message. Am I doing something wrong?

Thanks so much for your help!

You could simply evaluate the interpolated function at the desired points:

Code:
Table[{x, Evaluate[y[x] /. s][]}, {x, 0, 3/2, stepsize}]
or
Code:
Table[{x, s[[1, 1, 2]][x]}, {x, 0, 3/2, stepsize}]

The interpolating function itself is nested within [[1,1,2]] of the NDSolve output.

• Dale and joshmccraney
Very nice Fightfish! Inputting these into latex will be the worst, but this is a good way to get it done! Thanks!

Actually, it took no time at all! Once copy-pasting mathematica's output, I used the "replace and find" search key and replaced "}" with ")" and the commas after the parenthesis with "to" etc. Thanks a ton!

Dale
Mentor
2020 Award
then I receive the response "Part 2 of..." followed by a long error message. Am I doing something wrong?

Thanks so much for your help!
I like Fightfish's approach better. It turns out that my approach is not as simple as I has remembered.