react-map-gl/docs/api-reference/scale-control.md

1.2 KiB

Scale Control

Since v5.2

This is a React equivalent of Mapbox's ScaleControl.

import * as React from 'react';
import ReactMapGL, {ScaleControl} from 'react-map-gl';

function App() {
  const [viewport, setViewport] = React.useState({
    longitude: -122.45,
    latitude: 37.78,
    zoom: 14
  });
  return (
    <ReactMapGL {...viewport} width="100vw" height="100vh" onViewportChange={setViewport}>
      <div style={{position: 'absolute', bottom: 100, left: 20}}>
        <ScaleControl maxWidth={100} unit="metric" />
      </div>
    </ReactMapGL>
  );
}

Properties

maxWidth (Number)
  • default: 100

The maximum length of the scale control in pixels.

unit (String)
  • default: 'metric'

Unit of the distance, one of 'imperial', 'metric' or 'nautical'.

Styling

Like its Mapbox counterpart, this control relies on the mapbox-gl stylesheet to work properly. Make sure to add the stylesheet to your page.

Source

scale-control.js