Skip to content

Data Sources

Load external data (GeoJSON, CZML, KML), stream 3D Tilesets with per-feature styles, or build a custom data source in Python.

import cesiumkit

viewer = cesiumkit.Viewer()
viewer.add_data_source(cesiumkit.GeoJsonDataSource(url="https://example.com/cities.geojson", clamp_to_ground=True))
viewer.add_data_source(
    cesiumkit.Cesium3DTileset(
        url="https://example.com/tileset.json",
        style=cesiumkit.Cesium3DTileStyle(
            color_conditions=[
                ["${height} > 100", "color('red')"],
                ["true", "color('white')"],
            ]
        ),
    )
)

# A custom source you can attach entities to in Python
custom = cesiumkit.CustomDataSource(name="my_sources")
custom.entities.add(
    cesiumkit.Entity(
        name="Custom",
        position=cesiumkit.Cartesian3.from_degrees(-75, 40, 100),
    )
)
viewer.add_data_source(custom)

datasources

Data source types for loading external data into CesiumJS.

Classes:

Name Description
DataSource

Base for data sources.

CzmlDataSource

Load CZML data.

GeoJsonDataSource

Load GeoJSON data.

KmlDataSource

Load KML/KMZ data.

CustomDataSource

A custom data source with manually managed entities.

DataSource

Bases: CesiumBase

Base for data sources.

CzmlDataSource

Bases: DataSource

Load CZML data.

GeoJsonDataSource

Bases: DataSource

Load GeoJSON data.

KmlDataSource

Bases: DataSource

Load KML/KMZ data.

CustomDataSource

Bases: DataSource

A custom data source with manually managed entities.