World Cities (40 points, GeoJSON)
The same 40 world cities as a GeoJSON FeatureCollection of Points (longitude, latitude order per RFC 7946), each with name, country, and population properties. The mapping twin of the CSV, for testing GeoJSON parsers and map renderers.
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
139.6503,
35.6762
]
},
"properties": {
"name": "Tokyo",
"country": "JP",
"population": 37400068
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
77.1025,
28.7041
]
},
"properties": {
"name": "Delhi",
"country": "IN",
"population": 32941308
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
121.4737,
31.2304
]
},
"properties": {
"name": "Shanghai",
"country": "CN",
"population": 29210808
}
},
{
"type": "Feature",Specifications
- Features
- 40
- Geometry
- Point
- Note
- [longitude, latitude] order per RFC 7946
What is a .geojson file?
GeoJSON is a JSON-based format for encoding geographic data structures such as points, lines, and polygons, along with their properties. It uses WGS84 longitude-latitude coordinates and standard feature and feature-collection objects. It is a common interchange format for web mapping and GIS.
How to use this file
Use an example GeoJSON file to test geometry parsing, coordinate handling, and mapping libraries or GIS pipelines that render or analyze spatial features.
How to use this file for testing
“World Cities (40 points, GeoJSON)” is a deterministic Novus Examples fixture for Geospatial, Data import, Conversion testing. GeoJSON, GPX, and KML files with points, lines, polygons, and tracks — for testing map tools, route parsers, and geo importers.
Documented properties for this file: GEOJSON · 11,742 bytes. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Code examples
import geopandas as gpd
gdf = gpd.read_file("world-cities.geojson")
print(gdf.head())
print(gdf.crs)Related files
- csvReal-estate Listings (CSV, 30 rows)A property-listings dataset — 30 homes with address, type, price, beds/baths, size, year built, coordinates, and status. Synthetic data for testing listing importers, map plots, and price analytics.

- jsonReal-estate Listings (JSON, 30 records)The property listings as a JSON array — the format twin of the CSV, for import and mapping tests.

- gpkgGeoPackage — Aspatial Attributes Table (no geometry column)A GeoPackage holding an `attributes` table with no geometry at all — the standard's own answer to a lookup table you want to ship alongside your layers. Its gpkg_contents row has null bounds and a null SRS, which is what readers that assume every row is spatial trip over.

- gpkgGeoPackage — Three Feature Layers in One SQLite ContainerThe territory as an OGC GeoPackage: an ordinary SQLite database with the three required metadata tables and three feature layers whose geometry columns hold GeoPackage binary blobs. Unlike a shapefile it carries several geometry types, long column names and real typed columns in one file.

- gpxGPX — Route (rte) Rather Than a TrackA `rte` element: an ordered list of waypoints describing a planned route, with no timestamps because it has not been travelled yet. Many importers only look for `trk` and report this perfectly valid file as empty.

- gpxGPX — Standalone Waypoints OnlyFive `wpt` elements for the towns of the territory, with names, symbols and descriptions but no track or route. It is the GPX equivalent of a point layer, and the third of the three top-level GPX content types.

Generated by generation/data_graphs.py. Free for any use, no attribution required — license.