This should be possible by just reading the values of DataGridView cells in a for-loop for example, and assigning them as SeriesPoint X and Y values. Currently we do not have an example about this in VisualBasic .Net. However, I can attach a small example here, done in WinForms, which should give you the idea how this can be done.

In this example, we create a FreeformPointLineSeries, which gets its data values from a DataGridView (each row has two columns for X- and Y-values). Every time user changes/adds a value in the grid, values are updated inside CellValueChanged-event. Basically all this requires is some null checks and value parsing. Note that creating a new data point list every time is not the most efficient way to do this, could be better to just change the X-/Y-values of the data point corresponding to the cell whose values were changed.

The exact same logic works with 3D graphs as well. The only differences are that you are using PointLineSeries3D instead of FreeformPointLineseries, and SeriesPoint3D instead of SeriesPoint when assigning new data points. This means you have to assign three values to a data point (X, Y, Z). Therefore there most likely should be a third column in the DataGridView.

It is difficult to say what exactly is the reason why you couldn't create a 3D chart. It is possible that you are lacking some property setting such as setting ActiveView to View3D. Here is the same WinForms test project, now converted to use a 3D-chart.

About reading/filling data. LightningChart is primarily a visualization component and does not itself have an interface to connect to a database such as MySQL or Oracle. Technically, LightningChart does not care how data is supplied to chart, but in general it has limited functionality to read from some specific sources. Our Demo Application has “Large data open speed test” -example, which shows how save and read our file format. However, there are unlimited possibilities for ‘database’ and we cannot cover them all in our library. Therefore, user should develop own routines to read data from whatever source they have in order to add data to a chart. The data source or the method to read data from it should not affect the chart itself at all.