Skip to main content
explained reasoning behind shifting pm by -360
Source Link

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be projectedtranslated/rotated to -130°. That is a difference ofi.e.: (230-360) = -130°.

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be projected to -130°. That is a difference of (230-360) = -130°.

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be translated/rotated to -130°. i.e.: (230-360) = -130°.

explained reasoning behind shifting pm by -360
Source Link

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be projected to -130°. That is a difference of (230-360) = -130°.

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be projected to -130°. That is a difference of (230-360) = -130°.

Rollback to Revision 1 - Edit approval overridden by post owner or moderator
Source Link

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-180360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-180360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-180 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-180 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]

I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.

Using the "+pm" parameter of PROJ fixed this:

+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs

For a MapServer layer, this worked out to:

PROJECTION
###    "init=epsg:4326"
       "+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END

I've not used GeoServer, but this might work for the WKT description:

GEOGCS["4326 plus 360",
    DATUM["unknown",
        SPHEROID["Sphere",6371229,0]],
    PRIMEM["Custom",-360],
    UNIT["degree",0.0174532925199433]]
Loading
Source Link
Loading