Re: Plot function at specific points
- To: mathgroup at smc.vnet.net
- Subject: [mg114131] Re: Plot function at specific points
- From: Leonid Shifrin <lshifr at gmail.com>
- Date: Wed, 24 Nov 2010 07:01:12 -0500 (EST)
Hi Istvan, You are likely to get much better solutions, but here is one way (cheating somewhat): f == Interpolation[{{0, 1}, {1, 2}, {2, 3}, {3, 5}, {4, 8}, {5, 5}, {6, 2}, {7, 1}, {8, 1}, {9, 2}, {10, 4}}]; lowRes == Range[0, 10, 2]; eps == 0.001; cutF == Function[ Evaluate[ Module[{x}, Total[UnitStep[x - # + eps]*UnitStep[# + eps - x] & /@ lowRes] /. x -> #]]]; Plot[f[x]*cutF[x], {x, 0, 10}, PlotRange -> {{0, 10}, {0, 9}}, PlotPoints -> 10000, PlotStyle -> {Thickness[0.005]}] If your f[x] is expensive to compute, you can define f[x]cutF[x] as a single function and compute f[x] lazily only when cutF[x] is non-zero. Regards, Leonid 2010/11/23 Istv=E1n Zachar <zac at freemail.hu> > Dear Group, > > is there a method to plot an InterpolatingFunction at specific pointr > WITHIN Plot? I am of course aware that I can use ListPlot at any time, > though for certain reasons I have to stick with Plot. The main reason > is that I have a large amount of InterpolatingFunctions which I plot > with Plot as default, though at request I have to plot the same > InterpolatingFunctions at different resolutions. PlotPoints and > MaxRecursion is no good here, since lower resolution has to use a > certain set of x-values, defined prior to plotting. Obviously I want > to use the same Plot setup for both high and low-resolution cases. > Below is a toy modell of the problem: > > f == Interpolation[{{0, 1}, {1, 2}, {2, 3}, {3, 5}, {4, 8}, {5, 5}, {6, > 2}, {7, 1}, {8, 1}, {9, 2}, {10, 4}}]; > lowRes == Range[0, 10, 2]; > Plot[f[x], {x, 0, 10}, PlotRange -> {{0, 10}, {0, 9}}] > ListLinePlot[{#, f@#} & /@ lowRes, PlotRange -> {{0, 10}, {0, 9}}] > > Again, what I want is to have a specific Plot call instead of the > ListLinePlot, but with same result as ListLinePlot. > Note that values of 'lowRes' may not correspond the exact x- > coordinates supplied to f. > > Is there a way to tell Plot explicitly the steps to use? Any idea? > > Istvan > >