# Tag Info

2

I quite like this approach for investigating large 2D point sets: SmoothHistogram3D[{x, y}\[Transpose]]

6

Here's another way. It's not as fast as george2079's but since speed is an issue in the question, perhaps it is worth comparing them all. It uses the ListLinePlot options MaxPlotPoints and PerformanceGoal. One feels, perhaps, that lurking in the undocumented Method option there ought to be a setting that approaches the performance of george2079's ...

6

maybe the fastest, if the data is smooth, just take every Nth point.. ListPlot[Transpose[{x, y}][[;; ;; n/1000]], Joined -> True] Another sometimes useful approach especially if you have unordered data: ListPlot[RandomSample[Transpose[{x, y}], 1000]]

4

You can use Interpolation: n = 16000000; x = 0.5 Range[-(n/2), n/2]; y = 2.5 Range[-(n/2), n/2]; interpolated = Interpolation@Transpose[{x, y}]; Plot[interpolated[x], {x, -0.5 n/2, 0.5 n/2}] Interpolation makes it much faster to plot the graph since Plot doesn't have to plot all points in order to generate a good looking graph. Generating the plot in ...

2

If the function is smooth (as it is in your case), you can take the means of consecutive segments of data, to reduce the effective number of data points. I am sure that's what MATLAB does, believing, with some reason, that no one can make out $10^7$ points with the naked eye.

Top 50 recent answers are included