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

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

thank you very much @utkarsh.ayachit I had the same problem
Is there a way to import or process the grid but with the point in the centroid of the cube?

I would like something like this

I have something like this

At the end I would like to assign a color to every cube based upon its value like this

You can use the Cell Centers filter to place points at the centers of the hexes, then add a Glyph filter with the Glyph Type set to “Sphere”.

Thank you @cory.quammen

However, I would like to use the points like a centroid for every cube, because when I use the Threshold filter to the cells, in my example values > 4 for Au_SGS, and I repeat the same range for the points with a Extract Selection filter, the points and the cubes don’t match

I would like to see this, where the points and cubes match and even I can assign a color for every point and cube based in its value

When I use the Cell Centers filter I get the centroid points but I lost the values of the points and it is not posible to assign a color map to every point, furthermore, due to I am getting the centroid points from the extracted cells (Au_SGS > 4) the centroids points are not what I expected, it is missing some cells and points

It’s unfortunate Cell Centers doesn’t copy the cell data. That’s supported in the underlying VTK filter, just not made available in the ParaView exposure of that filter.

As a workaround in the version of ParaView you have, you can apply a Resample With Dataset filter. Set the “Source Data Arrays” input to your “Threshold>4” filter, and the “Destination Mesh” to the “CellCenters1” filter. That will give resample the data arrays onto the cell centers.

Thanks @cory.quammen it looks bettter

is it possible to add the labels for the points? like this:

You can add data labels for points that are selected, but this will affect the coloring of the data. To add labels, select from the Edit menu the Find Data item.

Under the Selection Display section in the Find Data panel, look for the popup menu labeled “Point Labels”. Pick the data array you want to use for labels. You should see the points labeled with their data values.

I note that this discussion had diverged quite a bit from the original question in multiple ways, but to circle back to using Threshold on the cell centroid, you can now use the Append Location Attributes filter on the original data. This will add a CellCenters field that you can run Threshold and other filters on.

Of course, Append Location Attributes will not let you see the centroids, so you will still need to use Cell Centers to see the dot in the middle.

Thanks guys,

You are right @Kenneth_Moreland the discussion has moved from the original topic, I think that I was searching for something similar to this an original post by @graysuit. @Rodrigo_Rocha asked the same here

My dataset is a geological block model: a table where every row represents a point with xyz location and a set of variables like gold, silver, copper, density, name of the rock, etc (only Au_SGS included here)

image

The goal is to represent these points like cubes where every cube can take a different color based upon its variable value

Then separate some cubes based upon a range of variable values (eg: Au SGS>4)

I thought that the point data to cell data filter will work but I did not know that paraview uses the point like a grid vertex, my best approach for now is this:

To use the table to structured grid filter

Threshold filter based upon a variable range (here Au_SGS > 4)

Cell Center Filter to get the centroid of the cubes

Resample with datase filter to assign the cubes values to the centroid points

Point data to cell data filter to assign the centroid point value to the cube and get a unique color by cube

It looks nice and very similar graphically to what I expected, like the block.vtu example of @graysuit

However if I use the original points and apply an extraction selection filter to Au_SGS > 4 and compare them with the cubes they do not match