Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ymaps-polygonmap

Package Overview
Dependencies
Maintainers
2
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ymaps-polygonmap

Yandex.Maps API module for data visualization.

  • 1.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

Yandex Maps API Polygonmap Module

Yandex.Maps API module for data visualization.

Polygonmap is a graphical representation of some spatial data, where depending on the number of entered points polygons are painted in different colors. Polygonmap class allows to construct and display such representations over geographical maps.

Loading

  1. Put module source code (polygonmap.min.js) on your CDN.

  2. Load both Yandex Maps JS API 2.1 and module source code by adding following code into <head> section of your page:

    <script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
    <!-- Change my.cdn.tld to your CDN host name -->
    <script src="http://my.cdn.tld/polygonmap.min.js" type="text/javascript"></script>
    

    If you use GeoJSON data:

    <script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU&coordOrder=longlat" type="text/javascript"></script>
    <!-- Change my.cdn.tld to your CDN host name -->
    <script src="http://my.cdn.tld/polygonmap.min.js" type="text/javascript"></script>
    

    If you use npm:

    <script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
    
    npm i --save ymaps-polygonmap
    
    require('ymaps-polygonmap');
    
    // Or with babel
    import 'ymaps-polygonmap';
    
  3. Get access to module functions by using ymaps.modules.require method:

    ymaps.modules.require(['Polygonmap'], function (Polygonmap) {
         var polygonmap = new Polygonmap();
    });
    

Polygonmap

Polygonmap module.

Requires: module:option.Manager, module:ObjectManager

Polygonmap ⏏

Kind: Exported class

new Polygonmap([data], [options])
ParamTypeDefaultDescription
[data]ObjectPolygons and points.
data.polygonsObjectGeoJSON FeatureCollections.
data.pointsObjectGeoJSON FeatureCollections.
[options]ObjectOptions for customization.
[options.mapper]functiondefaultMapperFunction of iterative transformation of features.
[options.fillBy]string"points"Calculate the color by points
[options.fillByWeightProp]string"weight"Prop name in data object, for weight value. If fillBy is "weight".
[options.fillByWeightType]string"middle"Type of calculate color by weight. Can be middle
[options.colorRanges]number | array4Count of ranges or array of custom ranges.
[options.colorScheme]string | array"['#e66a54', '#ce4356', '#ab2960', '#571756']"Preset for colorize or array of custom colors.
[options.fillOpacity]number0.8Opacity of polygon.
[options.fillColorEmptyPolygon]string"#f4f6f8"Color of polygon where points count equal 0.
[options.strokeColor]string"#fff"Color of polygon stroke.
[options.strokeWidth]number1Width of polygon stroke.
[options.showLegend]booleantrueFlag to show color legend.
[options.legendTemplate]functioncolorLegend.defaultTemplateReceives object {color: value} returns html legend template.
[options.legendPosition]objecttop: 10, right: 10Position of legend, you can only change the top or bottom and right or left.
[options.filter]functionFunction for custom filter polygons with points.
[options.filterEmptyPolygons]booleanfalseFlag for show polygon with count of points equal 0.
[options.onMouseEnter]functiondefaultOnMouseEnterHandler for mouseEnter event.
[options.onMouseLeave]functiondefaultOnMouseLeaveHandler for mouseLeave event.
[options.onClick]functiondefaultOnClickHandler for click event.
[options.balloonContent]functiondefaultBalloonContentFunction for render content of baloon. Recieves object with properties of polygon.
[options.fillColorHover]stringColor of polygon on polygon hover.
[options.fillOpacityHover]number0.9Number of opacity on polygon hover.
[options.strokeColorHover]stringColor of polygon stroke on polygon hover.
[options.strokeWidthHover]number2Number of stroke width on polygon hover.
[options.fillColorActive]stringColor of polygon on polygon active.
[options.fillOpacityActive]number0.9Number of opacity on polygon active.
[options.strokeColorActive]stringColor of polygon stroke on polygon active.
[options.strokeWidthActive]number2Number of stroke width on polygon active.
[options.interactivity]booleantrueFlag for enable interactivity.

polygonmap.getData() ⇒ Object

Get the data, polygons and points.

Kind: instance method of Polygonmap
Returns: Object - Polygons and points.
Access: public

polygonmap.setData(data) ⇒ Polygonmap

Set the data, polygons and points.

Kind: instance method of Polygonmap
Returns: Polygonmap - Self-reference.
Access: public

ParamTypeDescription
dataObjectPolygons and points.
data.polygonsObjectGeoJSON FeatureCollections.
data.pointsObjectGeoJSON FeatureCollections.

polygonmap.getMap() ⇒ Map

Get the Map instance.

Kind: instance method of Polygonmap
Returns: Map - Reference to Map instance.
Access: public

polygonmap.setMap(map) ⇒ Polygonmap

Set Map instance to render Polygonmap object.

Kind: instance method of Polygonmap
Returns: Polygonmap - Self-reference.
Access: public

ParamTypeDescription
mapMapMap instance.

polygonmap.destroy()

Destructs Polygonmap instance.

Kind: instance method of Polygonmap
Access: public

Examples

Displaying polygonmap over geographical map

ymaps.modules.require(['Polygonmap'], function (Polygonmap) {
    const dataPolygons = {
            type: 'FeatureCollection',
            features: [{
                id: 'id3',
                type: 'Feature',
                geometry: {
                    type: 'Polygon',
                    coordinates: [
                        [37.782051, -122.445068]
                        [37.782051, -122.445568]
                        [37.782951, -122.445068]
                        [37.782951, -122.445568]
                    ]
                }
            }]
        };
    const dataPoints = {
            type: 'FeatureCollection',
            features: [{
                id: 'id1',
                type: 'Feature',
                geometry: {
                    type: 'Point',
                    coordinates: [37.782551, -122.445368]
                }
            }, {
                id: 'id2',
                type: 'Feature',
                geometry: {
                    type: 'Point',
                    coordinates: [37.782745, -122.444586]
                }
            }]
        };
    const data = {polygons: dataPolygons, points: dataPoints};
    const polygonmap = new Polygonmap(data);

    polygonmap.setMap(myMap);
});

Updating polygonmap data

ymaps.modules.require(['Polygonmap'], function (Polygonmap) {
    const data = {polygons: dataPolygons, points: dataPoints};
    const polygonmap = new Polygonmap(data);

    polygonmap.setMap(myMap);

    const newData = {polygons: newDataPolygons, points: newDataPoints};

    polygonmap.setData(newData);
});

Changing polygonmap representation options

ymaps.modules.require(['Polygonmap'], function (Polygonmap) {
    const data = {polygons: dataPolygons, points: dataPoints};
    const polygonmap = new Polygonmap(data);

    polygonmap.options.set('mapper', (feature) => {
        const {pointsCount, pointsCountMaximum} = feature.properties;
        const k = pointsCount / pointsCountMaximum;

        feature.options = {fillColor: `rgba(0, 0, 0, ${k})`};

        return feature;
    });
    polygonmap.setMap(myMap);
});

Demo

Keywords

FAQs

Package last updated on 08 Jul 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc