{"id":20893375,"url":"https://github.com/arction/lcjs-example-1101-mapchartdynamiccolor","last_synced_at":"2025-03-12T19:14:19.319Z","repository":{"id":98723722,"uuid":"390320654","full_name":"Arction/lcjs-example-1101-mapChartDynamicColor","owner":"Arction","description":"A demo application showcasing using LightningChart JS to display a dynamically colored map.","archived":false,"fork":false,"pushed_at":"2025-02-05T11:40:02.000Z","size":12115,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-05T12:32:22.817Z","etag":null,"topics":["demo","dynamic-color-changing","example","javascript","lcjs","lightningchart-js","map","map-chart","performance","visualization","webgl"],"latest_commit_sha":null,"homepage":"https://www.arction.com/lightningchart-js-interactive-examples/examples/lcjs-example-1101-mapChartDynamicColor.html","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Arction.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-28T11:06:44.000Z","updated_at":"2025-02-05T11:36:58.000Z","dependencies_parsed_at":"2025-02-05T12:29:07.850Z","dependency_job_id":"6fa7fe78-bdcd-4df5-be3a-5889c71aa2a2","html_url":"https://github.com/Arction/lcjs-example-1101-mapChartDynamicColor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arction%2Flcjs-example-1101-mapChartDynamicColor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arction%2Flcjs-example-1101-mapChartDynamicColor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arction%2Flcjs-example-1101-mapChartDynamicColor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arction%2Flcjs-example-1101-mapChartDynamicColor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Arction","download_url":"https://codeload.github.com/Arction/lcjs-example-1101-mapChartDynamicColor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243277498,"owners_count":20265352,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["demo","dynamic-color-changing","example","javascript","lcjs","lightningchart-js","map","map-chart","performance","visualization","webgl"],"created_at":"2024-11-18T10:15:37.908Z","updated_at":"2025-03-12T19:14:19.312Z","avatar_url":"https://github.com/Arction.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Map Chart Dynamic Coloring\n\n![Map Chart Dynamic Coloring](mapChartDynamicColor-darkGold.png)\n\nThis demo application belongs to the set of examples for LightningChart JS, data visualization library for JavaScript.\r\n\r\nLightningChart JS is entirely GPU accelerated and performance optimized charting library for presenting massive amounts of data. It offers an easy way of creating sophisticated and interactive charts and adding them to your website or web application.\r\n\r\nThe demo can be used as an example or a seed project. Local execution requires the following steps:\r\n\r\n-   Make sure that relevant version of [Node.js](https://nodejs.org/en/download/) is installed\r\n-   Open the project folder in a terminal:\r\n\r\n          npm install              # fetches dependencies\r\n          npm start                # builds an application and starts the development server\r\n\r\n-   The application is available at _http://localhost:8080_ in your browser, webpack-dev-server provides hot reload functionality.\r\n\n\n## Description\n\nExample on using `MapChart` with real data set for coloring map regions dynamically.\r\n\r\nThe data set is downloaded with `fetch` when the application is started.\r\nIt contains population for each country around European area in the year 2018.\r\n\r\n```js\r\n;[\r\n    { 'Country Code': 'ALB', Value: 2866376 },\r\n    { 'Country Code': 'AUT', Value: 8840521 },\r\n    { 'Country Code': 'BLR', Value: 9483499 },\r\n]\r\n```\r\n\r\nThe application translates this format to one expected by `MapChart`:\r\n\r\n```js\r\nconst regionValuesData = populationData.map((item) =\u003e ({\r\n    ISO_A3: item['Country Code'],\r\n    value: item['Value'],\r\n}))\r\n```\r\n\r\n```js\r\n;[\r\n    { ISO_A3: 'ALB', value: 2866376 },\r\n    { ISO_A3: 'AUT', value: 8840521 },\r\n    { ISO_A3: 'BLR', value: 9483499 },\r\n]\r\n```\r\n\r\nFinally, the data is supplied to `MapChart` using the `invalidateRegionValues` method:\r\n\r\n```js\r\nmapChart.invalidateRegionValues(regionValuesData)\r\n```\r\n\r\n`MapChart` can utilize the region values data in two ways:\r\n\r\n1. Dynamic region coloring based on color look-up table.\r\n2. Auto Cursor formatting.\r\n\r\n### Dynamic region coloring\r\n\r\nDynamic coloring is enabled by setting the regions _fill style_ to a `PalettedFill`:\r\n\r\n```js\r\nmapChart.setFillStyle(\r\n    new PalettedFill({\r\n        lut: new LUT({\r\n            steps: [\r\n                {\r\n                    value: 1 * 1000 * 1000,\r\n                    color: ColorRGBA(0, 255, 0),\r\n                    label: '1 Million',\r\n                },\r\n                { value: 10 * 1000 * 1000, color: ColorRGBA(127, 127, 0), label: '' },\r\n                { value: 50 * 1000 * 1000, color: ColorRGBA(255, 127, 0), label: '' },\r\n                {\r\n                    value: 500 * 1000 * 1000,\r\n                    color: ColorRGBA(255, 0, 0),\r\n                    label: '500 Million',\r\n                },\r\n            ],\r\n            interpolate: true,\r\n            // This property is used to specify fallback color for regions which have no data.\r\n            color: ColorRGBA(255, 255, 255),\r\n        }),\r\n    }),\r\n)\r\n```\r\n\r\n**More map examples**:\r\n\r\n-   [Data visualization over LightningChart JS Map Charts](https://lightningchart.com/lightningchart-js-interactive-examples/examples/lcjs-example-1103-mapChartVizXY.html)\r\n-   [Data visualization over Google Maps](https://blog.arction.com/easy-geospatial-data-visualization-with-lightningchart-js-and-google)\r\n-   [LightningChart JS Map Charts with Drill-down](https://lightningchart.com/lightningchart-js-interactive-examples/examples/lcjs-example-1111-covidDrillDownDashboard.html)\r\n-   [Data visualization over static map picture](https://lightningchart.com/lightningchart-js-interactive-examples/examples/lcjs-example-1110-geoChartUsaTemperature.html)\r\n\n\n## API Links\n\n* [Map chart]\n* [Map types]\n* [Paletted fill]\n* [Color lookup table]\n* [Color RGBA]\n* [Empty line]\n* [Format longitude/latitude]\n\n\n## Support\n\nIf you notice an error in the example code, please open an issue on [GitHub][0] repository of the entire example.\r\n\r\nOfficial [API documentation][1] can be found on [LightningChart][2] website.\r\n\r\nIf the docs and other materials do not solve your problem as well as implementation help is needed, ask on [StackOverflow][3] (tagged lightningchart).\r\n\r\nIf you think you found a bug in the LightningChart JavaScript library, please contact sales@lightningchart.com.\r\n\r\nDirect developer email support can be purchased through a [Support Plan][4] or by contacting sales@lightningchart.com.\r\n\r\n[0]: https://github.com/Arction/\r\n[1]: https://lightningchart.com/lightningchart-js-api-documentation/\r\n[2]: https://lightningchart.com\r\n[3]: https://stackoverflow.com/questions/tagged/lightningchart\r\n[4]: https://lightningchart.com/support-services/\r\n\n© LightningChart Ltd 2009-2022. All rights reserved.\r\n\n\n[Map chart]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/classes/MapChart.html\n[Map types]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/variables/MapTypes.html\n[Paletted fill]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/classes/PalettedFill.html\n[Color lookup table]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/classes/LUT.html\n[Color RGBA]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/functions/ColorRGBA.html\n[Empty line]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/variables/emptyLine.html\n[Format longitude/latitude]: https://lightningchart.com/js-charts/api-documentation/v7.0.1/functions/formatLongitudeLatitude.html\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farction%2Flcjs-example-1101-mapchartdynamiccolor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farction%2Flcjs-example-1101-mapchartdynamiccolor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farction%2Flcjs-example-1101-mapchartdynamiccolor/lists"}