diff --git a/src/lib/geo_location_utils.js b/src/lib/geo_location_utils.js index e15659f8f45..af8bebe36fc 100644 --- a/src/lib/geo_location_utils.js +++ b/src/lib/geo_location_utils.js @@ -62,7 +62,7 @@ function locationToFeature(locationmode, location, features) { for(i = 0; i < filteredFeatures.length; i++) { f = filteredFeatures[i]; - if(f.id === locationId) return f; + if(f.id === locationId && isMainCountryFeature(f)) return f; } loggers.log([ @@ -74,6 +74,18 @@ function locationToFeature(locationmode, location, features) { return false; } +function isMainCountryFeature(feature) { + // Returns false for certain features which are not the main region of their country + if(feature.id === 'USA') { + if(feature.properties && feature.properties.ct && feature.properties.ct[0] == -155.5 && + feature.properties.ct[1] == 19.6) { + // Hawaii + return false; + } + } + return true; +} + function feature2polygons(feature) { var geometry = feature.geometry; var coords = geometry.coordinates; diff --git a/src/lib/topojson_utils.js b/src/lib/topojson_utils.js index b533b1a71bf..44f32914236 100644 --- a/src/lib/topojson_utils.js +++ b/src/lib/topojson_utils.js @@ -13,7 +13,11 @@ topojsonUtils.getTopojsonName = function(geoLayout) { }; topojsonUtils.getTopojsonPath = function(topojsonURL, topojsonName) { - return topojsonURL + topojsonName + '.json'; + if (topojsonURL.endsWith('/')) { + return topojsonURL + topojsonName + '.json'; + } else { + return topojsonURL + '/' + topojsonName + '.json'; + } }; topojsonUtils.getTopojsonFeatures = function(trace, topojson) { diff --git a/test/image/baselines/canada_geo_projections.png b/test/image/baselines/canada_geo_projections.png index 4c73c096ce4..a498e3aa936 100644 Binary files a/test/image/baselines/canada_geo_projections.png and b/test/image/baselines/canada_geo_projections.png differ diff --git a/test/image/baselines/distance_satellite.png b/test/image/baselines/distance_satellite.png index 6dbe808db06..b849fc54df7 100644 Binary files a/test/image/baselines/distance_satellite.png and b/test/image/baselines/distance_satellite.png differ diff --git a/test/image/baselines/geo_across-antimeridian.png b/test/image/baselines/geo_across-antimeridian.png index c805f0723e2..4a56409d320 100644 Binary files a/test/image/baselines/geo_across-antimeridian.png and b/test/image/baselines/geo_across-antimeridian.png differ diff --git a/test/image/baselines/geo_africa-insets.png b/test/image/baselines/geo_africa-insets.png index ccccecfdc1f..cb020cec891 100644 Binary files a/test/image/baselines/geo_africa-insets.png and b/test/image/baselines/geo_africa-insets.png differ diff --git a/test/image/baselines/geo_aitoff-sinusoidal.png b/test/image/baselines/geo_aitoff-sinusoidal.png index 05c418fd674..6ecdd223217 100644 Binary files a/test/image/baselines/geo_aitoff-sinusoidal.png and b/test/image/baselines/geo_aitoff-sinusoidal.png differ diff --git a/test/image/baselines/geo_bg-color.png b/test/image/baselines/geo_bg-color.png index 6ff22e2f38b..398affd433d 100644 Binary files a/test/image/baselines/geo_bg-color.png and b/test/image/baselines/geo_bg-color.png differ diff --git a/test/image/baselines/geo_big-frame.png b/test/image/baselines/geo_big-frame.png index 4caa8fb532d..5febeb698da 100644 Binary files a/test/image/baselines/geo_big-frame.png and b/test/image/baselines/geo_big-frame.png differ diff --git a/test/image/baselines/geo_bubbles-colorscales.png b/test/image/baselines/geo_bubbles-colorscales.png index 329cf6f9f8d..80321ac7de5 100644 Binary files a/test/image/baselines/geo_bubbles-colorscales.png and b/test/image/baselines/geo_bubbles-colorscales.png differ diff --git a/test/image/baselines/geo_bubbles-sizeref.png b/test/image/baselines/geo_bubbles-sizeref.png index 534b5ab7642..ebb14f27cc2 100644 Binary files a/test/image/baselines/geo_bubbles-sizeref.png and b/test/image/baselines/geo_bubbles-sizeref.png differ diff --git a/test/image/baselines/geo_canadian-cities.png b/test/image/baselines/geo_canadian-cities.png index f83012e6946..c3eabec59f6 100644 Binary files a/test/image/baselines/geo_canadian-cities.png and b/test/image/baselines/geo_canadian-cities.png differ diff --git a/test/image/baselines/geo_centering.png b/test/image/baselines/geo_centering.png index 876eae09959..0942ef069e5 100644 Binary files a/test/image/baselines/geo_centering.png and b/test/image/baselines/geo_centering.png differ diff --git a/test/image/baselines/geo_choropleth-legend.png b/test/image/baselines/geo_choropleth-legend.png index 2aff9b3245a..7d6a1bc17e5 100644 Binary files a/test/image/baselines/geo_choropleth-legend.png and b/test/image/baselines/geo_choropleth-legend.png differ diff --git a/test/image/baselines/geo_choropleth-text.png b/test/image/baselines/geo_choropleth-text.png index 0206a92d616..69c122d3e93 100644 Binary files a/test/image/baselines/geo_choropleth-text.png and b/test/image/baselines/geo_choropleth-text.png differ diff --git a/test/image/baselines/geo_choropleth-usa.png b/test/image/baselines/geo_choropleth-usa.png index fe3b168c388..4d44c209abe 100644 Binary files a/test/image/baselines/geo_choropleth-usa.png and b/test/image/baselines/geo_choropleth-usa.png differ diff --git a/test/image/baselines/geo_choropleth-usa_legend.png b/test/image/baselines/geo_choropleth-usa_legend.png index df33be59778..e4ae3f275fb 100644 Binary files a/test/image/baselines/geo_choropleth-usa_legend.png and b/test/image/baselines/geo_choropleth-usa_legend.png differ diff --git a/test/image/baselines/geo_conic-conformal.png b/test/image/baselines/geo_conic-conformal.png index b4900e61c1c..72a312e90fb 100644 Binary files a/test/image/baselines/geo_conic-conformal.png and b/test/image/baselines/geo_conic-conformal.png differ diff --git a/test/image/baselines/geo_connectgaps.png b/test/image/baselines/geo_connectgaps.png index 41e635d38b4..f2ca414244f 100644 Binary files a/test/image/baselines/geo_connectgaps.png and b/test/image/baselines/geo_connectgaps.png differ diff --git a/test/image/baselines/geo_country-names-text-chart.png b/test/image/baselines/geo_country-names-text-chart.png index 51c99316b62..c6d48b322f3 100644 Binary files a/test/image/baselines/geo_country-names-text-chart.png and b/test/image/baselines/geo_country-names-text-chart.png differ diff --git a/test/image/baselines/geo_country-names.png b/test/image/baselines/geo_country-names.png index 50e7749a5ac..7838b3dda5a 100644 Binary files a/test/image/baselines/geo_country-names.png and b/test/image/baselines/geo_country-names.png differ diff --git a/test/image/baselines/geo_custom-colorscale.png b/test/image/baselines/geo_custom-colorscale.png index 643e97b2a2f..c2e715bc7ab 100644 Binary files a/test/image/baselines/geo_custom-colorscale.png and b/test/image/baselines/geo_custom-colorscale.png differ diff --git a/test/image/baselines/geo_custom-geojson.png b/test/image/baselines/geo_custom-geojson.png index fa1728f90cc..8a6fb12e568 100644 Binary files a/test/image/baselines/geo_custom-geojson.png and b/test/image/baselines/geo_custom-geojson.png differ diff --git a/test/image/baselines/geo_europe-bubbles.png b/test/image/baselines/geo_europe-bubbles.png index 4b13c7342ac..a2abbc8a3a6 100644 Binary files a/test/image/baselines/geo_europe-bubbles.png and b/test/image/baselines/geo_europe-bubbles.png differ diff --git a/test/image/baselines/geo_featureidkey.png b/test/image/baselines/geo_featureidkey.png index ab0735a6b76..8f40a34bb62 100644 Binary files a/test/image/baselines/geo_featureidkey.png and b/test/image/baselines/geo_featureidkey.png differ diff --git a/test/image/baselines/geo_fill.png b/test/image/baselines/geo_fill.png index aafeb426e0f..e6354ca4620 100644 Binary files a/test/image/baselines/geo_fill.png and b/test/image/baselines/geo_fill.png differ diff --git a/test/image/baselines/geo_first.png b/test/image/baselines/geo_first.png index d944c459f71..8f8578d702c 100644 Binary files a/test/image/baselines/geo_first.png and b/test/image/baselines/geo_first.png differ diff --git a/test/image/baselines/geo_fitbounds-geojson.png b/test/image/baselines/geo_fitbounds-geojson.png index f75fc2ea1b0..ba6573a3c30 100644 Binary files a/test/image/baselines/geo_fitbounds-geojson.png and b/test/image/baselines/geo_fitbounds-geojson.png differ diff --git a/test/image/baselines/geo_fitbounds-locations.png b/test/image/baselines/geo_fitbounds-locations.png index 0ff77f7c43c..39abff5873b 100644 Binary files a/test/image/baselines/geo_fitbounds-locations.png and b/test/image/baselines/geo_fitbounds-locations.png differ diff --git a/test/image/baselines/geo_fitbounds-scopes.png b/test/image/baselines/geo_fitbounds-scopes.png index 155c91d9365..c2ebfb47178 100644 Binary files a/test/image/baselines/geo_fitbounds-scopes.png and b/test/image/baselines/geo_fitbounds-scopes.png differ diff --git a/test/image/baselines/geo_kavrayskiy7.png b/test/image/baselines/geo_kavrayskiy7.png index ad50d380972..db042f5c329 100644 Binary files a/test/image/baselines/geo_kavrayskiy7.png and b/test/image/baselines/geo_kavrayskiy7.png differ diff --git a/test/image/baselines/geo_lakes-and-rivers.png b/test/image/baselines/geo_lakes-and-rivers.png index 210d367fdd2..e826ad3f8ad 100644 Binary files a/test/image/baselines/geo_lakes-and-rivers.png and b/test/image/baselines/geo_lakes-and-rivers.png differ diff --git a/test/image/baselines/geo_legendonly.png b/test/image/baselines/geo_legendonly.png index 0203c2cc1ae..a77096c4330 100644 Binary files a/test/image/baselines/geo_legendonly.png and b/test/image/baselines/geo_legendonly.png differ diff --git a/test/image/baselines/geo_miterlimit-base-layers.png b/test/image/baselines/geo_miterlimit-base-layers.png index eda64eef89e..c6253308893 100644 Binary files a/test/image/baselines/geo_miterlimit-base-layers.png and b/test/image/baselines/geo_miterlimit-base-layers.png differ diff --git a/test/image/baselines/geo_multi-geos.png b/test/image/baselines/geo_multi-geos.png index 04787f8aabd..bc04152c736 100644 Binary files a/test/image/baselines/geo_multi-geos.png and b/test/image/baselines/geo_multi-geos.png differ diff --git a/test/image/baselines/geo_multiple-usa-choropleths.png b/test/image/baselines/geo_multiple-usa-choropleths.png index 66589581958..f582c236c14 100644 Binary files a/test/image/baselines/geo_multiple-usa-choropleths.png and b/test/image/baselines/geo_multiple-usa-choropleths.png differ diff --git a/test/image/baselines/geo_orthographic.png b/test/image/baselines/geo_orthographic.png index ab6d925ebb5..b77c5ce116a 100644 Binary files a/test/image/baselines/geo_orthographic.png and b/test/image/baselines/geo_orthographic.png differ diff --git a/test/image/baselines/geo_point-selection.png b/test/image/baselines/geo_point-selection.png index a343a9a0c13..22f6c7b7b25 100644 Binary files a/test/image/baselines/geo_point-selection.png and b/test/image/baselines/geo_point-selection.png differ diff --git a/test/image/baselines/geo_scattergeo-locations.png b/test/image/baselines/geo_scattergeo-locations.png index c25e73877ba..8c18bd2dca6 100644 Binary files a/test/image/baselines/geo_scattergeo-locations.png and b/test/image/baselines/geo_scattergeo-locations.png differ diff --git a/test/image/baselines/geo_scattergeo-out-of-usa.png b/test/image/baselines/geo_scattergeo-out-of-usa.png index 623f7d08cf0..4fde95a5787 100644 Binary files a/test/image/baselines/geo_scattergeo-out-of-usa.png and b/test/image/baselines/geo_scattergeo-out-of-usa.png differ diff --git a/test/image/baselines/geo_second.png b/test/image/baselines/geo_second.png index 082fcf710b0..cdf0254de58 100644 Binary files a/test/image/baselines/geo_second.png and b/test/image/baselines/geo_second.png differ diff --git a/test/image/baselines/geo_skymap.png b/test/image/baselines/geo_skymap.png index 7e0e8f04159..0d7135170a8 100644 Binary files a/test/image/baselines/geo_skymap.png and b/test/image/baselines/geo_skymap.png differ diff --git a/test/image/baselines/geo_stereographic.png b/test/image/baselines/geo_stereographic.png index cf0b24814ca..b7c28960657 100644 Binary files a/test/image/baselines/geo_stereographic.png and b/test/image/baselines/geo_stereographic.png differ diff --git a/test/image/baselines/geo_text_chart_arrays.png b/test/image/baselines/geo_text_chart_arrays.png index 56d065433c3..2593c325d38 100644 Binary files a/test/image/baselines/geo_text_chart_arrays.png and b/test/image/baselines/geo_text_chart_arrays.png differ diff --git a/test/image/baselines/geo_tick0.png b/test/image/baselines/geo_tick0.png index e64926fbcdb..7179008f52c 100644 Binary files a/test/image/baselines/geo_tick0.png and b/test/image/baselines/geo_tick0.png differ diff --git a/test/image/baselines/geo_usa-states-on-world-scope.png b/test/image/baselines/geo_usa-states-on-world-scope.png index 096091151bf..0e0c9d440ba 100644 Binary files a/test/image/baselines/geo_usa-states-on-world-scope.png and b/test/image/baselines/geo_usa-states-on-world-scope.png differ diff --git a/test/image/baselines/geo_usa-states.png b/test/image/baselines/geo_usa-states.png index 596a3cf78ba..214f7731393 100644 Binary files a/test/image/baselines/geo_usa-states.png and b/test/image/baselines/geo_usa-states.png differ diff --git a/test/image/baselines/geo_visible_false_override_template.png b/test/image/baselines/geo_visible_false_override_template.png index 201e71d72cf..ba02f3bcad1 100644 Binary files a/test/image/baselines/geo_visible_false_override_template.png and b/test/image/baselines/geo_visible_false_override_template.png differ diff --git a/test/image/baselines/geo_winkel-tripel.png b/test/image/baselines/geo_winkel-tripel.png index 57cb4573905..3478e023fa1 100644 Binary files a/test/image/baselines/geo_winkel-tripel.png and b/test/image/baselines/geo_winkel-tripel.png differ diff --git a/test/image/baselines/grid_subplot_types.png b/test/image/baselines/grid_subplot_types.png index 26c6136a62f..2c3c5dd7b22 100644 Binary files a/test/image/baselines/grid_subplot_types.png and b/test/image/baselines/grid_subplot_types.png differ diff --git a/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths.png b/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths.png index 2afb83662c4..9742772efc2 100644 Binary files a/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths.png and b/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths.png differ diff --git a/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths_with-border.png b/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths_with-border.png index bafbf74d3d3..3622fb84c38 100644 Binary files a/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths_with-border.png and b/test/image/baselines/h-colorbar_geo_multiple-usa-choropleths_with-border.png differ diff --git a/test/image/baselines/marker-standoff.png b/test/image/baselines/marker-standoff.png index 54db57a75a5..1f27e93bf54 100644 Binary files a/test/image/baselines/marker-standoff.png and b/test/image/baselines/marker-standoff.png differ diff --git a/test/image/baselines/marker-standoff_auto-backoff.png b/test/image/baselines/marker-standoff_auto-backoff.png index 34abdddae0c..f23518e3069 100644 Binary files a/test/image/baselines/marker-standoff_auto-backoff.png and b/test/image/baselines/marker-standoff_auto-backoff.png differ diff --git a/test/image/baselines/marker-standoff_auto-backoff2.png b/test/image/baselines/marker-standoff_auto-backoff2.png index 9ba17f625d7..3c1d32602a2 100644 Binary files a/test/image/baselines/marker-standoff_auto-backoff2.png and b/test/image/baselines/marker-standoff_auto-backoff2.png differ diff --git a/test/image/baselines/plot_types.png b/test/image/baselines/plot_types.png index 913272c8916..fd969bc2951 100644 Binary files a/test/image/baselines/plot_types.png and b/test/image/baselines/plot_types.png differ diff --git a/test/image/baselines/plot_types_grid_dash.png b/test/image/baselines/plot_types_grid_dash.png index faeabbba42a..2e8d4363798 100644 Binary files a/test/image/baselines/plot_types_grid_dash.png and b/test/image/baselines/plot_types_grid_dash.png differ diff --git a/test/image/baselines/texttemplate_scatter.png b/test/image/baselines/texttemplate_scatter.png index eaaabb65bfa..10474c7da47 100644 Binary files a/test/image/baselines/texttemplate_scatter.png and b/test/image/baselines/texttemplate_scatter.png differ diff --git a/test/image/baselines/various_geo_projections.png b/test/image/baselines/various_geo_projections.png index ff79ac26983..651e1f1ef01 100644 Binary files a/test/image/baselines/various_geo_projections.png and b/test/image/baselines/various_geo_projections.png differ diff --git a/test/image/compare_pixels_test.js b/test/image/compare_pixels_test.js index 75aba5fc7af..656ce846532 100644 --- a/test/image/compare_pixels_test.js +++ b/test/image/compare_pixels_test.js @@ -63,6 +63,10 @@ argv._.forEach(function(pattern) { var blacklist = [ 'map_angles', 'map_stamen-style', + 'map_predefined-styles2', + 'map_scattercluster', + 'map_fonts-supported-open-sans', + 'map_fonts-supported-open-sans-weight', ]; if(virtualWebgl) { diff --git a/test/image/make_baseline.py b/test/image/make_baseline.py index 519335d31cd..1d051ea9c21 100644 --- a/test/image/make_baseline.py +++ b/test/image/make_baseline.py @@ -53,6 +53,7 @@ plotlyjs = plotlyjs_with_virtual_webgl pio.kaleido.scope.plotlyjs = plotlyjs +pio.kaleido.scope.topojson = "file://" + os.path.join(root, 'dist', 'topojson') pio.templates.default = 'none' ALL_MOCKS = [os.path.splitext(a)[0] for a in os.listdir(dirIn) if a.endswith('.json')] @@ -66,6 +67,10 @@ # unable to generate baselines for the following mocks blacklist = [ 'map_stamen-style', + 'map_predefined-styles2', + 'map_scattercluster', + 'map_fonts-supported-open-sans', + 'map_fonts-supported-open-sans-weight', ] allNames = [a for a in allNames if a not in blacklist] diff --git a/test/jasmine/tests/geo_test.js b/test/jasmine/tests/geo_test.js index c78a46c0cad..66c1de23ddf 100644 --- a/test/jasmine/tests/geo_test.js +++ b/test/jasmine/tests/geo_test.js @@ -2759,10 +2759,10 @@ describe('Test geo interactions update marker angles:', function() { }) .then(function() { newPath = getPath(); - expect(newPath).toEqual('M0,0L18.22327727600463,8.240883770679762L19.586810955756498,-4.044358612123453Z'); + expect(newPath).toEqual('M0,0L18.223277273610172,8.24088377597469L19.58681095693162,-4.04435860643234Z'); expect(newPath).not.toEqual(initialPath); - expect(newPath).toEqual('M0,0L18.22327727600463,8.240883770679762L19.586810955756498,-4.044358612123453Z'); + expect(newPath).toEqual('M0,0L18.223277273610172,8.24088377597469L19.58681095693162,-4.04435860643234Z'); expect(initialPath).toEqual('M0,0L-1.5100144203478312,19.942914943667123L10.500523963798084,17.021721313830223Z'); }) .then(done, done.fail);