<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Creating Map Custom Visual with GeoJSON Data in Developer</title>
    <link>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583040#M17877</link>
    <description>&lt;P&gt;We suggest to use "Pause on Caugh Exception" to understand what issue the code produces:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 id="chrome"&gt;Chrome&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Open developer tools (F12)&lt;/LI&gt;
&lt;LI&gt;Go to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;Sources&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;tab&lt;/LI&gt;
&lt;LI&gt;Click the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;break on exceptions&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;icon (stop sign with a pause symbol)&lt;/LI&gt;
&lt;LI&gt;Check the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;Pause On Caught Exceptions&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;checkbox&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.png" style="width: 600px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/136565iA9A299785E3CBC3A/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Ignat Vilesov,&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Software Engineer&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Microsoft Power BI Custom Visuals&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt;"&gt;&lt;A href="mailto:pbicvsupport@microsoft.com" target="_blank"&gt;pbicvsupport@microsoft.com&lt;/A&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 11 Dec 2018 07:55:26 GMT</pubDate>
    <dc:creator>v-viig</dc:creator>
    <dc:date>2018-12-11T07:55:26Z</dc:date>
    <item>
      <title>Creating Map Custom Visual with GeoJSON Data</title>
      <link>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/582876#M17874</link>
      <description>&lt;P&gt;I'm in the early stages of creating a Power BI custom map visual. At the moment, I'm just trying to get a blank U.S. map to display. I'm using GeoJSON data, which I've added to my package as follows:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Saved the JSON into a JavaScript file and added&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;var jsonData = {}&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;around it.&lt;/LI&gt;&lt;LI&gt;Added this JavaScript file to a geojson subfolder to my node_modules folder&lt;/LI&gt;&lt;LI&gt;Added an additional ExternalJS reference to my manifest -&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;"node_modules/geojson/us-states.js"&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Now I'm starting to build the visual as follows:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class="pln"&gt;module powerbi&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;extensibility&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;visual &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="str"&gt;"use strict"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="kwd"&gt;export&lt;/SPAN&gt; &lt;SPAN class="kwd"&gt;class&lt;/SPAN&gt; &lt;SPAN class="typ"&gt;Visual&lt;/SPAN&gt; &lt;SPAN class="kwd"&gt;implements&lt;/SPAN&gt; &lt;SPAN class="typ"&gt;IVisual&lt;/SPAN&gt; &lt;SPAN class="pun"&gt;{&lt;/SPAN&gt;
        &lt;SPAN class="kwd"&gt;private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; host&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt; &lt;SPAN class="typ"&gt;IVisualHost&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;;&lt;/SPAN&gt;
        &lt;SPAN class="kwd"&gt;private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; svg&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;Selection&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;SVGElement&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;gt;;&lt;/SPAN&gt;
        &lt;SPAN class="kwd"&gt;private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; div&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;Selection&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;SVGElement&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;gt;;&lt;/SPAN&gt;
        &lt;SPAN class="kwd"&gt;private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; container&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;Selection&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="typ"&gt;SVGElement&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;gt;;&lt;/SPAN&gt;
        &lt;SPAN class="kwd"&gt;private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; json &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; JSON&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;parse&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;((&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;any&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;window&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;).&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;jsonData&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;);&lt;/SPAN&gt;  

        &lt;SPAN class="kwd"&gt;constructor&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;options&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt; &lt;SPAN class="typ"&gt;VisualConstructorOptions&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt; &lt;SPAN class="pun"&gt;{&lt;/SPAN&gt;

            &lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;svg &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;select&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;options&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;element&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
            &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;append&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;'svg'&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;);&lt;/SPAN&gt;
            &lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;container &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt; &lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;svg&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;append&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"g"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                    &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;classed&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;'container'&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt; &lt;SPAN class="kwd"&gt;true&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;);&lt;/SPAN&gt;
        &lt;SPAN class="pun"&gt;}&lt;/SPAN&gt;


        &lt;SPAN class="kwd"&gt;public&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; update&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;options&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt; &lt;SPAN class="typ"&gt;VisualUpdateOptions&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt; &lt;SPAN class="pun"&gt;{&lt;/SPAN&gt;
            &lt;SPAN class="kwd"&gt;let&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; width&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; number &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; options&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;viewport&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;width&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;;&lt;/SPAN&gt; 
            &lt;SPAN class="kwd"&gt;let&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; height&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; number &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; options&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;viewport&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;height&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;;&lt;/SPAN&gt;

            &lt;SPAN class="com"&gt;// D3 Projection&lt;/SPAN&gt;
            &lt;SPAN class="kwd"&gt;var&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; projection &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;geo&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;albersUsa&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;()&lt;/SPAN&gt;
                   &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;translate&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;([&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;width&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;/&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;2&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; height&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;/&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;2&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;])&lt;/SPAN&gt;    &lt;SPAN class="com"&gt;// translate to center of screen&lt;/SPAN&gt;
                   &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;scale&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;1000&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;);&lt;/SPAN&gt;          &lt;SPAN class="com"&gt;// scale things down so see entire US&lt;/SPAN&gt;

&lt;SPAN class="com"&gt;// Define path generator&lt;/SPAN&gt;
            &lt;SPAN class="kwd"&gt;var&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; path &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; d3&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;geo&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;path&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;()&lt;/SPAN&gt;               &lt;SPAN class="com"&gt;// path generator that will convert GeoJSON to SVG paths&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;projection&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;projection&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;);&lt;/SPAN&gt;  &lt;SPAN class="com"&gt;// tell path generator to use albersUsa projection&lt;/SPAN&gt;

&lt;SPAN class="com"&gt;//Create SVG element and append map to the SVG&lt;/SPAN&gt;
            &lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;svg&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;attr&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;({&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;                width&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; width&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;                height&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;:&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; height
            &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;});&lt;/SPAN&gt;

            &lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;svg&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;selectAll&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"path"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;data&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;this&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;json&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;features&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;enter&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;()&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;append&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"path"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;attr&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"d"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; path&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;style&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"stroke"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt; &lt;SPAN class="str"&gt;"#fff"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;style&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="str"&gt;"stroke-width"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt; &lt;SPAN class="str"&gt;"1"&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;
        &lt;SPAN class="pun"&gt;}&lt;/SPAN&gt;
    &lt;SPAN class="pun"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="pun"&gt;}&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The visual is blank. No errors in console. I had hoped to debug using this:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://microsoft.github.io/PowerBI-visuals/docs/how-to-guide/how-to-debug/" target="_blank" rel="nofollow noreferrer"&gt;https://microsoft.github.io/PowerBI-visuals/docs/how-to-guide/how-to-debug/&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;, but the code provided there produced numerous errors and I believe has been deprecated based on a comment on that page.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Dec 2018 02:23:59 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/582876#M17874</guid>
      <dc:creator>gattoun1</dc:creator>
      <dc:date>2018-12-11T02:23:59Z</dc:date>
    </item>
    <item>
      <title>Re: Creating Map Custom Visual with GeoJSON Data</title>
      <link>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583040#M17877</link>
      <description>&lt;P&gt;We suggest to use "Pause on Caugh Exception" to understand what issue the code produces:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 id="chrome"&gt;Chrome&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Open developer tools (F12)&lt;/LI&gt;
&lt;LI&gt;Go to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;Sources&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;tab&lt;/LI&gt;
&lt;LI&gt;Click the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;break on exceptions&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;icon (stop sign with a pause symbol)&lt;/LI&gt;
&lt;LI&gt;Check the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="highlighter-rouge"&gt;Pause On Caught Exceptions&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;checkbox&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.png" style="width: 600px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/136565iA9A299785E3CBC3A/image-size/large?v=v2&amp;amp;px=999" role="button" title="image.png" alt="image.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Ignat Vilesov,&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Software Engineer&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Microsoft Power BI Custom Visuals&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt;"&gt;&lt;A href="mailto:pbicvsupport@microsoft.com" target="_blank"&gt;pbicvsupport@microsoft.com&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Dec 2018 07:55:26 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583040#M17877</guid>
      <dc:creator>v-viig</dc:creator>
      <dc:date>2018-12-11T07:55:26Z</dc:date>
    </item>
    <item>
      <title>Re: Creating Map Custom Visual with GeoJSON Data</title>
      <link>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583599#M17888</link>
      <description>&lt;DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;PRE&gt;/*
 *  Power BI Visual CLI
 *
 *  Copyright (c) Microsoft Corporation
 *  All rights reserved.
 *  MIT License
 *
 *  Permission is hereby granted, free of charge, to any person obtaining a copy
 *  of this software and associated documentation files (the ""Software""), to deal
 *  in the Software without restriction, including without limitation the rights
 *  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 *  copies of the Software, and to permit persons to whom the Software is
 *  furnished to do so, subject to the following conditions:
 *
 *  The above copyright notice and this permission notice shall be included in
 *  all copies or substantial portions of the Software.
 *
 *  THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 *  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 *  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 *  THE SOFTWARE.
 */


 
module powerbi.extensibility.visual {
    "use strict";
    export function logExceptions(): MethodDecorator {
        return function (target: Object, propertyKey: string, descriptor: TypedPropertyDescriptor&amp;lt;any&amp;gt;)
            : TypedPropertyDescriptor&amp;lt;any&amp;gt; {

            return {
                value: function () {
                    try {
                        return descriptor.value.apply(this, arguments);
                    } catch (e) {
                        console.error(e);
                        throw e;
                    }
                }
            }
        }
    }


    export class Visual implements IVisual {
        private host: IVisualHost;
        private svg: d3.Selection&amp;lt;SVGElement&amp;gt;;
        private div: d3.Selection&amp;lt;SVGElement&amp;gt;;
        private container: d3.Selection&amp;lt;SVGElement&amp;gt;;
        private json = JSON.parse((&amp;lt;any&amp;gt;window).jsonData);  

       
        constructor(options: VisualConstructorOptions) {

            this.svg = d3.select(options.element)
            .append('svg');
            this.container = this.svg.append("g")
                    .classed('container', true);
        }
        
        @logExceptions()
        public update(options: VisualUpdateOptions) {
            let width: number = options.viewport.width; 
            let height: number = options.viewport.height;
            console.log('Json:', this.json);
            debugger;

            // D3 Projection
            var projection = d3.geo.albersUsa()
				   .translate([width/2, height/2])    // translate to center of screen
				   .scale(1000);          // scale things down so see entire US
        
// Define path generator
            var path = d3.geo.path()               // path generator that will convert GeoJSON to SVG paths
		  	    .projection(projection);  // tell path generator to use albersUsa projection

//Create SVG element and append map to the SVG
            this.svg.attr({
                width: width,
                height: height
            });
        
            this.container.selectAll("path")
                .data(this.json.features)
                .enter()
                .append("path")
                .attr("d", path)
                .style("stroke", "#fff")
                .style("stroke-width", "1")
        }
    }   
}

&lt;/PRE&gt;I added some debugging functionality above. If I set the developer tools to pause on every exception, it pauses hundreds of times before the page is even loaded. If I don't pause on every exception, the only thing appearing in the console is this:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;Uncaught TypeError: Cannot read property 'dataview' of undefined
    at &amp;lt;anonymous&amp;gt;:67:73
    at &amp;lt;anonymous&amp;gt;:94:15
    at &amp;lt;anonymous&amp;gt;:95:11
    at &amp;lt;anonymous&amp;gt;:96:7
    at Window.&amp;lt;anonymous&amp;gt; (&amp;lt;anonymous&amp;gt;:97:3)
    at &amp;lt;anonymous&amp;gt;:217:20
    at Object.i [as injectJsCode] (VM3514 visualhostcore.min.js:2)
    at r (VM3515 visualsandbox.min.js:1)
    at i.loadWithoutResourcePackage (VM3515 visualsandbox.min.js:1)
    at i.executeMessage (VM3515 visualsandbox.min.js:1)&lt;/PRE&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 11 Dec 2018 20:57:51 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583599#M17888</guid>
      <dc:creator>gattoun1</dc:creator>
      <dc:date>2018-12-11T20:57:51Z</dc:date>
    </item>
    <item>
      <title>Re: Creating Map Custom Visual with GeoJSON Data</title>
      <link>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583874#M17894</link>
      <description>&lt;P&gt;Can you share the whole source code?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Ignat Vilesov,&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Software Engineer&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt; color: #333333;"&gt;Microsoft Power BI Custom Visuals&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt;"&gt;&lt;A href="mailto:pbicvsupport@microsoft.com" target="_blank"&gt;pbicvsupport@microsoft.com&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 12 Dec 2018 07:15:03 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Developer/Creating-Map-Custom-Visual-with-GeoJSON-Data/m-p/583874#M17894</guid>
      <dc:creator>v-viig</dc:creator>
      <dc:date>2018-12-12T07:15:03Z</dc:date>
    </item>
  </channel>
</rss>

