API

For all API users. If you set the color of the image by the GET parameter like ?color=1, please, switch to the new Tile Server API links to get the image directly without 301 redirects. That’s pretty easy to do:

Pay attention to add +1 to your color index ({color + 1})

Terms of Use

Tile Server

https://tilecache.rainviewer.com/v2/

URLDescription
/radar/{ts}/{size}/{z}/{x}/{y}/{color}/{options}.pngRadar data: displays one tile with the composite radar reflectivity data, with specified size, color scheme, and additional options.
/radar/{ts}/{size}/{z}/{latitude}/{longitude}/{color}/{options}.pngRadar data: the same as link above, but with center at specified coordinate (EPSG:4326) with desired zoom size. Great for widgets
/composite/{ts}/{big_size}/{color}/{options}.pngComposite image with radar reflectivity for a whole world. Slow generation, up to 10 seconds per image loads. Cannot be smoothed because it took too many time and resources now.
/coverage/0/{size}/{z}/{x}/{y}.pngCoverage tile: where radar data is available (transparent areas) and where is not (black areas)
/coverage/0/{size}/{z}/{latitude}/{longitude}.pngCoverage data as above but for specified center coordinate (latitude, longitude)
/coverage/0/{big_size}.pngComposite coverage tile for a whole world at once. Slow generation.

Geofence composite files

Projection is Web Mercator (EPSG:3857), Google Maps, Apple Maps, Bing Maps ready. Bounds: -180.0 -85.06 ... 180.0 85.06. WLD files for for different sizes: will add geofence data to single composite PNG images for your favorite map application like QGIS, ArcGIS etc.: 2000 x 1000, 4000 x 2000, 4096 x 4096, 8000 x 4000, 8192 x 8192, 16000 x 8000, 16384 x 16384, 24000 x 12000

You can also geofence any of full composite png files with gdal_translate command:

gdal_translate -co compress=lzw -of Gtiff \
	-a_ullr -20037508.342789248 20048966.10401463 20037508.342789248 -20048966.10401463 \
	-a_srs EPSG:3857 image.png image.tif

Color Schemes

ColorName
0Black and White dBZ values
1Original
2Universal Blue
3TITAN
4The Weather Channel
5Meteored
6NEXRAD Level III
7Rainbow @ SELEX-IS

Black and White dBZ Values

Shows raw dBZ values starting from the -31 dBZ (pixel’s red component color “1” value) and ending at 95 dBZ (“127” value) with 1 dBZ step (see table below). If snow options are selected, the first bit in sub-color byte provides the snow mask. For example, if red component is 175 that means the snow with reflectivity 15 dBZ. 175 & 128 = 128 - snow mark. 175 & 127 = 47 red pixel value. 47 - 32 = 15 dBZ. If a pixel is transparent, there is no data for it or -32 dBZ.

Pixel valuedBZPrecipitation Type
0No DataRain
1-31 dBZRain
2-30 dBZRain
Rain
12694 dBZRain
12795 dBZRain
128No DataSnow
129-31 dBZSnow
Snow
25595 dBZSnow

Examples

Single Radar Images

https://data.rainviewer.com/images/

Contains the data archive of sources and processed radar files (past 24 hours). The directory name is a radar identifier in RainViewer. Each directory of particular radar contains radar source and processed images sorted by time.

File EndingDescription
0_source.(png|gif|jpeg|jpgRadar source image (image format may vary)
0_source.urlLink to the original image location
1_bw_raw.pngClean radar image without watermarks, ground maps, and legends. Source image colors are converted to black and white gamma.
1_bw.pngBlack and white reflectivity map with applied noise reduction algorithms in the original image projection (do not try to use for Google Maps).
2_map.pngBlack and white reflectivity in the Web Mercator projection (EPSG:3857). Can be placed directly as an overlay in Google Maps, Open Street Maps or any other web map.
2_map.wldWorld file which describe *2_map.png image placement on the map. Uses Web Mercator (EPSG:3857) projection.

How to get GeoTIFF file from PNG + WLD

That’s pretty easy with gdal_translate command. Put *2_map.png and *2_map.wld files of any radar image into the same directory and use this command:

gdal_translate -co compress=lzw -of Gtiff -a_srs EPSG:3857 {source_image} {output_image}

Where:

Example

You can download example files from this link. Here is an output from two commands: gdal_translate, which is geofence the radar PNG image, and the gdainfo, which shows the information in a geofenced image. It is important to have both PNG and WLD files of an image in the same directory with the same name.

# ls -la
-rw-r--r--  1 root root       2670 Nov 11 10:42 MXAC_20191111_092600_2_map.png
-rw-r--r--  1 root root         99 Nov 11 10:42 MXAC_20191111_092600_2_map.wld

# gdal_translate -co compress=lzw -of Gtiff -a_srs EPSG:3857 MXAC_20191111_092600_2_map.png MXAC_20191111_092600_2_map.tiff
Input file size is 652, 643
0...10...20...30...40...50...60...70...80...90...100 - done.

# gdalinfo MXAC_20191111_092600_2_map.tiff
Driver: GTiff/GeoTIFF
Files: MXAC_20191111_092600_2_map.tiff
Size is 652, 643
Coordinate System is:
PROJCS["WGS 84 / Pseudo-Mercator",
    GEOGCS["WGS 84",
        DATUM["WGS_1984",
            SPHEROID["WGS 84",6378137,298.257223563,
                AUTHORITY["EPSG","7030"]],
            AUTHORITY["EPSG","6326"]],
        PRIMEM["Greenwich",0,
            AUTHORITY["EPSG","8901"]],
        UNIT["degree",0.0174532925199433,
            AUTHORITY["EPSG","9122"]],
        AUTHORITY["EPSG","4326"]],
    PROJECTION["Mercator_1SP"],
    PARAMETER["central_meridian",0],
    PARAMETER["scale_factor",1],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]],
    AXIS["X",EAST],
    AXIS["Y",NORTH],
    EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],
    AUTHORITY["EPSG","3857"]]
Origin = (-11633496.373428674414754,2404880.429133014287800)
Pixel Size = (1621.142941106099897,-1621.142941106099897)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  COMPRESSION=LZW
  INTERLEAVE=BAND
Corner Coordinates:
Upper Left  (-11633496.373, 2404880.429) (104d30'19.71"W, 21d 6'32.40"N)
Lower Left  (-11633496.373, 1362485.518) (104d30'19.71"W, 12d 8'50.56"N)
Upper Right (-10576511.176, 2404880.429) ( 95d 0'37.50"W, 21d 6'32.40"N)
Lower Right (-10576511.176, 1362485.518) ( 95d 0'37.50"W, 12d 8'50.56"N)
Center      (-11105003.775, 1883682.974) ( 99d45'28.61"W, 16d40'50.36"N)
Band 1 Block=652x25 Type=Byte, ColorInterp=Palette
  NoData Value=0
  Image Structure Metadata:
    NBITS=4
  Color Table (RGB with 16 entries)
    0: 0,0,0,0
    1: 22,22,22,255
    2: 42,42,42,255
    3: 45,45,45,255
    4: 50,50,50,255
    5: 55,55,55,255
    6: 60,60,60,255
    7: 65,65,65,255
    8: 70,70,70,255
    9: 75,75,75,255
   10: 80,80,80,255
   11: 0,0,0,255
   12: 0,0,0,255
   13: 0,0,0,255
   14: 0,0,0,255
   15: 0,0,0,255