Converting .csv Files to 3D Plots (stuck!!)

I have multiple .csv files that I need to convert in ParaView. I have followed the following steps:

  • Open your .csv file, Apply
  • Filter → Table to points
  • Set X to x, Y to y, Z to z, Apply
  • Filter → Delaunay 3D, Apply

But ParaView gets stuck and crashes when I apply the Delaunay 3D filter. This is likely because my .csv is so large.

One .csv file that is 262,145 rows long took about 10 minutes to apply the Delaunay 3D filter. I have two more .csv files that are 2,097,151 rows and 16,777,215 rows long. Both are getting stuck and crashing after 5 HOURS. Is there some way I can automatically convert the .csv to an .xdmf or some other ParaView file? Or at least a quicker way??


Are the points arranged regularly into a grid by chance? If so, then the Table to Structured Grid filter would be much faster than Delaunay 3D.

Hi Cory,

Thanks for the quick reply. Do you mean using Table to Structured Grid instead of Table to Points? Or using Table to Points then Table to Structured Grid? After using Table to Structured Grid, how do I view it in 3D?

Honestly, I am not sure if my points are arranged into a grid. I am relatively new to excel. How do I check this?

Yes, that is what I meant.

The outer surface of the structured grid will be displayed as a solid surface by default.

What is your end goal? Do you want to see the X, Y, Z points in space? Or are you trying to create an unstructured grid from the points (that’s what Delaunay 3D does).

Hi Cory,

My end goal is to produce an image like the one shown below. I have the x, y, and z coordinates in a .csv file that I need converted to a 3D image.

In that case, Table to Structured Grid should work, as long as your input XYZ points are ordered in a way such that they trace through lines of the grid structure systematically first along one dimension, then the next, then the third.

Set the Whole Extent to

0, nx-1
0, ny-1
0, nz-1

where nx, ny, and nz are the dimensions of your grid in the CSV file. Then choose the X Column array, Y Column array, and Z Column array to be the matching column from the CSV file.

Hi Cory,

This is a screenshot of my window:

I uploaded the .csv, and then used Table to Structured Grid with Whole Extent to 0-64 for each of the directions, as well as setting the columns properly. Nothing is showing up. Do I need another filter, too?

If you can share the sample file, it’ll be easy to figure out what’s going on.

FILENAME2000.csv (173.5 KB)

Here is one of the files that is smaller, only 4096 rows (16^3). The larger one is too large to upload. It is too large to even view in Excel at 2,097,152 rows long (128^3). By the way, I got the Table to Structured Grid working, but this is what it looks like:

I want it to be a cube, not just show the axes outline. Just to note, it is the larger one that I am having trouble with ParaView. It gets stuck.

The issue is that rows are not ordered correctly. Attached is the same CSV with columns sorted by x, y and z.

sorted.csv (173.5 KB)

here’s the result:

Hi Utkarsh,

I just want to double check something, the x, y, and z columns are the coordinates for the voxels (points). These coordinates remain the same, it is just sorted in the x column right? But the corresponding y and z values remain the same?

yes, unless I messed up using Excel…I don’t use it often, so I’d recommend you generate the sorted version for yourself, correctly.

No, that worked! Thank you very much