# How to add netcdf variables

**URL:** https://discourse.vtk.org/t/how-to-add-netcdf-variables/11436
**Category:** Support
**Created:** [May 11, 2023, 12:55pm UTC](https://discourse.vtk.org/t/how-to-add-netcdf-variables/11436 "2023-05-11T12:55:37Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![Cave1212](https://discourse.vtk.org/letter_avatar_proxy/v4/letter/c/4491bb/32.png) [@Cave1212](https://discourse.vtk.org/u/Cave1212)
#### Post date: [May 11, 2023, 12:55pm UTC](https://discourse.vtk.org/t/how-to-add-netcdf-variables/11436/1 "2023-05-11T12:55:37Z")

</div>

so i have this code

```auto
 vtkSmartPointer<vtkNetCDFCFReader> reader = vtkSmartPointer<vtkNetCDFCFReader>::New();
    reader->SetFileName("C:/Users/admin/Desktop/BOLTgui/BOLT/cami.nc");

    reader->Update();

    vtkDataObject* dataObject = reader->GetOutput();
    vtkDataSet* dataSet = vtkDataSet::SafeDownCast(dataObject);
    vtkPointData* pointData = dataSet->GetPointData();

    vtkSmartPointer<vtkContourFilter> contourFilter = vtkSmartPointer<vtkContourFilter>::New();
    contourFilter->SetInputConnection(reader->GetOutputPort());
    contourFilter->SetValue(0, 20); // set iso-value
    contourFilter->Update();

    vtkSmartPointer<vtkLookupTable> lookupTable = vtkSmartPointer<vtkLookupTable>::New();
    lookupTable->SetNumberOfTableValues(256);
    lookupTable->Build();
    lookupTable->SetTableRange(contourFilter->GetOutput()->GetScalarRange());

    vtkSmartPointer<vtkColorTransferFunction> colorTransferFunction = vtkSmartPointer<vtkColorTransferFunction>::New();
    colorTransferFunction->AddRGBPoint(0.0, 0.0, 0.0, 1.0); // blue
    colorTransferFunction->AddRGBPoint(20.0, 0.0, 1.0, 0.0); // green
    colorTransferFunction->AddRGBPoint(40.0, 1.0, 1.0, 0.0); // yellow
    colorTransferFunction->AddRGBPoint(60.0, 1.0, 0.0, 0.0); // red

    vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
    mapper->SetInputConnection(contourFilter->GetOutputPort());
    mapper->SetLookupTable(lookupTable);
    mapper->UseLookupTableScalarRangeOn();

    mapper->ScalarVisibilityOn();
    mapper->SetScalarModeToUsePointData();
    mapper->SetLookupTable(lookupTable);
    mapper->SetLookupTable(colorTransferFunction);

    vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New();
    actor->SetMapper(mapper);

    vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer < vtkRenderer>::New();
    renderer->AddActor(actor);

    vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
    renderWindow->AddRenderer(renderer);

    vtkSmartPointer<vtkRenderWindowInteractor> interactor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
    interactor->SetRenderWindow(renderWindow);

    sf::WindowHandle handle = window.getSystemHandle();
    renderWindow->SetWindowInfo(reinterpret_cast<char*>(handle));
    interactor->Start();

```

but when i run my program i get this vtk output error that shows this warning

```auto
Warning: In vtkNetCDFReader.cxx, line 834
vtkNetCDFCFReader (0000022D830FDF90): Variable time_written dimensions (chars) are different than the other variable dimensions (lat lev lon). Skipping

```

is there a way to add variables lat lev lon
