地图是区域的可视化表示 - 一种象征性描绘,突出显示该空间的元素(如对象,区域和主题)之间的关系。
Google Maps JS API - GestureHandling:“贪婪”在 iOS 9 上无法正常工作
我正在编写一个移动应用程序,它在我的应用程序内部的 webView 中显示 Google 地图。就在几个月前,在运行 iOS 9.3.5 的测试 iPad 上,一切都完全按照预期运行。地图
R 贴图在 RStudio 绘图窗格中看起来很糟糕,但在导出时可以工作
我正在使用 R 中的 tmap 包来创建一系列等值线地图。当我遵循在线教程时,我知道最终的地图应该是什么样子。然而,当我尝试可视化地图时......
我有一个 Android 应用程序,其中包含应按特定顺序遵循的 POI 坐标列表。 显然,如果应用程序/GPS 在第一个之前打开,那就很容易了。但当...
我正在开发一个超级克隆,但是当我在网络上运行该应用程序时,它不允许我在地图上看到位置,并且收到此错误,这有帮助! 在这里您还可以看到应用程序何时
我想做一张欧洲地图,所以我尝试使用这段代码,但我真的不知道它是如何工作的。 #这是我的数据 欧洲<-structure(list(Code = c("BE", "BG", "CZ", &
Azure 地图 - 无法使用 sas 令牌获取两个位置之间的路线,但可以通过订阅密钥来获取
我可以使用天蓝色主订阅密钥在两个位置之间获取路由。然而,我们更喜欢使用 sas 令牌,它可以很好地加载地图、显示标记等。但...
我在使用 geom_sf 和facet_wrap 时遇到问题。 下面是一个可重现的示例。当我使用“ct_sf1”时,我看不到第一个 geom_sf 的边界。 图书馆(dplyr) 库(ggplot2) 图书馆(SF) 图书馆(
我的纽约 d3 地图将无法加载。有人可以帮忙吗? 这是我的代码: 身体 { 字体:12px 无衬线; } 小路 { 圣...</desc> <question vote="1"> <p>我的纽约 d3 地图将无法加载。有人可以帮忙吗?</p> <p>这是我的代码:</p> <pre><code><!DOCTYPE html> <meta charset="utf-8"> <style> body { font: 12px sans-serif; } path { stroke-width: 1.75px; stroke: #531b93; fill: #919191; cursor: pointer; } path:hover, path.highlighted { fill: #0096ff; } div.tooltip { position: absolute; background-color: white; border: 1px solid black; color: black; font-weight: bold; padding: 4px 8px; display: none; } </style> <body> <script src="http://d3js.org/d3.v3.min.js"></script> <script> //Map dimensions (in pixels) var width = 600, height = 600; //Map projection var projection = d3.geo.mercator() .scale(58722.369041340586) .center([-73.97768078496284,40.705833704252484]) //projection center .translate([width/2,height/2]) //translate to center the map in view //Generate paths based on projection var path = d3.geo.path() .projection(projection); //Create an SVG var svg = d3.select("body").append("svg") .attr("width", width) .attr("height", height); //Group for the map features var features = svg.append("g") .attr("class","features"); //Create zoom/pan listener //Change [1,Infinity] to adjust the min/max zoom scale var zoom = d3.behavior.zoom() .scaleExtent([1, Infinity]) .on("zoom",zoomed); svg.call(zoom); //Create a tooltip, hidden at the start var tooltip = d3.select("body").append("div").attr("class","tooltip"); d3.json("NYC_MapInfos.geojson",function(error,geodata) { if (error) return console.log(error); //unknown error, check the console //Create a path for each map feature in the data features.selectAll("path") .data(geodata.features) .enter() .append("path") .attr("d",path) .on("mouseover",showTooltip) .on("mousemove",moveTooltip) .on("mouseout",hideTooltip) .on("click",clicked); }); // Add optional onClick events for features here // d.properties contains the attributes (e.g. d.properties.name, d.properties.population) function clicked(d,i) { } //Update map on zoom/pan function zoomed() { features.attr("transform", "translate(" + zoom.translate() + ")scale(" + zoom.scale() + ")") .selectAll("path").style("stroke-width", 1.75 / zoom.scale() + "px" ); } //Position of the tooltip relative to the cursor var tooltipOffset = {x: 5, y: -25}; //Create a tooltip, hidden at the start function showTooltip(d) { moveTooltip(); tooltip.style("display","block") .text(d.properties.PO_NAME); } //Move the tooltip to track the mouse function moveTooltip() { tooltip.style("top",(d3.event.pageY+tooltipOffset.y)+"px") .style("left",(d3.event.pageX+tooltipOffset.x)+"px"); } //Create a tooltip, hidden at the start function hideTooltip() { tooltip.style("display","none"); } </script> </code></pre> <p>这是 geojson 文件: <a href="http://data.beta.nyc//dataset/3bf5fb73-edb5-4b05-bb29-7c95f4a727fc/resource/6df127b1-6d04-4bb7-b983-07402a2c3f90/download/f4129d9aa6dd4281bc98d0f701629b76nyczipcodetabulationareas.geojson" rel="nofollow">http://data.beta.nyc//dataset/3bf5fb73-edb5-4b05-bb29-7c95f4a727fc/resource/6df127b1-6d04-4bb7 -b983-07402a2c3f90/下载/f4129d9aa6dd4281bc98d0f701629b76nyczipcodetabulationareas.geojson</a></p> </question> <answer tick="true" vote="0"> <p>您可以尝试使用 <a href="https://github.com/gagan-bansal/geojson2svg" rel="nofollow noreferrer">geojson2svg</a> 模块使用 geojson 数据创建 SVG 地图。由于这只是简单的 JavaScript,因此您将拥有更多控制权。这是你的例子</p> <p>您的 html 页面 (index.html):</p> <pre><code><html> <head> <link rel="stylesheet" href="./map.css"/> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/geojson2svg/1.0.3/geojson2svg.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-beta1/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.rawgit.com/geosquare/reproject-spherical-mercator/v0.1.3/dist/reproject-spherical-mercator.min.js"></script> <script type="text/javascript" src="https://cdn.rawgit.com/geosquare/geojson-bbox/master/dist/geojson-bbox.min.js"></script> </head> <body> <h2>Example of New York postal code map created with geojson2svg</h2> <div id="mapArea" style="width:600px;height:600px;"> <svg id="map" xmlns="http://www.w3.org/2000/svg" width="600" height="600" x="0" y="0" > </svg> <div class="tooltip" ></div> </div> <script type="text/javascript" src="./main.js"></script> </body> </code></pre> <p>Javascript代码(main.js):</p> <pre><code>var dataURI = "http://data.beta.nyc//dataset/3bf5fb73-edb5-4b05-bb29-7c95f4a727fc/resource/6df127b1-6d04-4bb7-b983-07402a2c3f90/download/f4129d9aa6dd4281bc98d0f701629b76nyczipcodetabulationareas.geojson"; $.get(dataURI,drawGeoJSON); $('#map').on('mouseover','path',function(ev) { console.log(ev.target.feature.properties.postalCode); var tooltip = document.querySelector('.tooltip'); tooltip.style.top = ev.pageY - 30; tooltip.style.left = ev.pageX + 5; tooltip.style.display = 'block'; tooltip.innerHTML = ev.target.feature.properties.PO_NAME; }); $('#map').on('mouseout','path',function(ev) { var tooltip = document.querySelector('.tooltip'); tooltip.style.display = 'none'; }); function drawGeoJSON(geojson) { // covert wgs84 data to Web Mercator projection var geojsonMerc = reproject(geojson); // reproject: https://github.com/geosquare/reproject-spherical-mercator var extent = bbox(geojsonMerc); // bbox: https://github.com/geosquare/geojson-bbox var mapExtent = { left: extent[0], bottom: extent[1], right: extent[2], top: extent[3] }; var svgMap = document.getElementById('map'); // geojson2svg: https://github.com/gagan-bansal/geojson2svg var convertor = geojson2svg( { viewportSize: {width:600,height:600}, mapExtent: mapExtent, attributes: { 'vector-effect':'non-scaling-stroke' }, explode: false } ); geojsonMerc.features.forEach(function(f) { var svgStr = convertor.convert(f,{attributes: {id: 'pc-'+f.properties.OBJECTID}}); var svg = parseSVG(svgStr); svgMap.appendChild(parseSVG(svgStr)); var svgEle = svgMap.querySelector('#' + 'pc-'+f.properties.OBJECTID); svgEle.feature = f; }); } //parseSVG from http://stackoverflow.com/questions/3642035/jquerys-append-not-working-with-svg-element function parseSVG(s) { var div= document.createElementNS('http://www.w3.org/1999/xhtml', 'div'); div.innerHTML= '<svg xmlns="http://www.w3.org/2000/svg">'+s+'</svg>'; var frag= document.createDocumentFragment(); while (div.firstChild.firstChild) frag.appendChild(div.firstChild.firstChild); return frag; } </code></pre> <p>和CSS(map.css):</p> <pre><code>body { font: 12px sans-serif; } path { stroke-width: 1px; stroke: #531b93; fill: #919191; cursor: pointer; } path:hover, path.highlighted { fill: #0096ff; } div.tooltip { position: absolute; background-color: white; border: 1px solid black; color: black; font-weight: bold; padding: 4px 8px; display: none; } </code></pre> <p>如需提前使用,请查看<a href="https://maps-on-blackboard.github.io/tag/geojson2svg/" rel="nofollow noreferrer">此博客</a></p> </answer> </body></html>
下面是调用onclick事件的函数 函数drawMapFromWms(latt,longt){ document.getElementById('hrymap').innerHTML = ""; document.getElementById('hrymap').innerH...
Google 导航 SDK Android 在第一个路径点停止多个目的地路线
我编写了这段代码,它应该将用户带到所有路径点然后结束路线,但它在到达第一个点时结束。 问题视频: https://youtube.com/shorts/MiCmPkNRTkI 正如你可以...
在Python中使用Bing Maps API密钥绘制多边形字符串时增加缩放级别时颜色反转
我想增加由使用 matplotlib 库在 Bing 地图上绘制的多边形组成的绘图的缩放级别。我正在使用以下代码: 导入请求 从 PIL 导入图像 从 io 导入 BytesIO
E/flutter (23677): [错误:flutter/runtime/dart_vm_initializer.cc(41)] 未处理的异常:异常:无法获取路由:响应 ---> REQUEST_DENIED E/flutter (23677): #0 NetworkUtil.
您知道我可以在我的应用程序中集成完整的逐向导航的 SDK / API 吗? 有这样的事吗
我正在使用 NextJS,因此我正在使用 Highcharts React。我需要使这些国家的颜色相同但有图案。 我的目标是重新创建这个: 世界地图,其中区域涂成红色并带有图案 我...
我应该在 Android 应用程序中使用什么地图功能,我可以在其中进行位置标记,为特定区域放置一个透明圆圈,锚定一个对象。基本上是一个可调整且灵活的...
我正在尝试在我的 WPF 应用程序中创建一个简单的地图窗口。该应用程序运行没有任何错误,但地图不显示。我不确定如何调试该问题。 我的 WPF xaml: 我正在尝试在我的 WPF 应用程序中创建一个简单的地图窗口。该应用程序运行没有任何错误,但地图不显示。我不确定如何调试该问题。 我的 WPF xaml: <Window x:Class="StructuralCalculations.WindTool.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:StructuralCalculations.WindTool" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:vm="clr_namespace:StructuralCalculations.MainVM" xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf" Title="MainWindow" Width="800" Height="450" mc:Ignorable="d"> <Window.DataContext> <local:MainVM /> </Window.DataContext> <Grid> <Grid.RowDefinitions> <RowDefinition Height="10" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="10" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="10" /> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="150" /> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="10" /> </Grid.ColumnDefinitions> <wv2:WebView2 x:Name="MapBrowser" Grid.Row="1" Grid.Column="1" Width="500" Height="300" /> <StackPanel Grid.Row="1" Grid.Column="2" Margin="0,0,0,0" Orientation="Vertical"> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Project:" /> <TextBox Text="{Binding ProjectName}" /> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Job Number:" /> <TextBox Text="{Binding JobNumber}" /> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Address:" /> <TextBox x:Name="AddressTextBox" Text="{Binding Address}" /> <!--<Button Margin="30,5,30,5" Click="CenterMapButton_Click" Content="Center Map" />--> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Nearest City:" /> <TextBlock x:Name="CityNameTextBlock" Margin="0,0,0,0" VerticalAlignment="Center" Text="{Binding Location, Mode=TwoWay}" /> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Wind Region:" /> <TextBlock Margin="0,0,0,0" VerticalAlignment="Center" Text="{Binding WindRegion}" /> <TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Elevation:" /> <TextBlock x:Name="ElevationTextBlock" Margin="0,0,0,0" VerticalAlignment="Center" Text="{Binding Elevation, Mode=TwoWay}" /> </StackPanel> <Button Grid.Row="2" Grid.Column="4" Width="100" Height="50" Command="{Binding GenerateReportCommand}" Content="Report" /> </Grid> </Window> 我的xaml.cs: using Microsoft.Web.WebView2.Core; using System.IO; using System.Windows; namespace StructuralCalculations.WindTool { //[ComVisible(true)] // Make the class visible to COM for scripting public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); InitializeWebView(); } private async void InitializeWebView() { // Ensure WebView2 environment is initialized await MapBrowser.EnsureCoreWebView2Async(); // Enable JavaScript explicitly MapBrowser.CoreWebView2.Settings.IsScriptEnabled = true; // Attach event handlers after WebView2 is initialized MapBrowser.CoreWebView2.WebMessageReceived += CoreWebView2_WebMessageReceived; MapBrowser.CoreWebView2.OpenDevToolsWindow(); // Open DevTools // Add a global error handler for JavaScript errors await MapBrowser.CoreWebView2.AddScriptToExecuteOnDocumentCreatedAsync(@" window.onerror = (message, source, lineno, colno, error) => { console.error(`${message} at ${source}:${lineno}:${colno}`); }; "); // Get the path of the HTML file string htmlFilePath = Path.Combine(Environment.CurrentDirectory, "Shared", "map.html"); // Check if the file exists if (File.Exists(htmlFilePath)) { // Load the HTML file into WebView2 MapBrowser.CoreWebView2.Navigate(htmlFilePath); } else { MessageBox.Show("HTML file not found: " + htmlFilePath); } } void CoreWebView2_WebMessageReceived(object sender, CoreWebView2WebMessageReceivedEventArgs e) { MessageBox.Show(e.WebMessageAsJson); } } } 我的 html 隐藏了我的 API 密钥: <!doctype html> <!-- @license Copyright 2019 Google LLC. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 --> <html> <head> <title>Add Map</title> </head> <body> <h3>My Google Maps Demo</h3> <!--The div element for the map --> <div id="map"></div> <!-- prettier-ignore --> <script> (g => { var h, a, k, p = "The Google Maps JavaScript API", c = "google", l = "importLibrary", q = "__ib__", m = document, b = window; b = b[c] || (b[c] = {}); var d = b.maps || (b.maps = {}), r = new Set, e = new URLSearchParams, u = () => h || (h = new Promise(async (f, n) => { await (a = m.createElement("script")); e.set("libraries", [...r] + ""); for (k in g) e.set(k.replace(/[A-Z]/g, t => "_" + t[0].toLowerCase()), g[k]); e.set("callback", c + ".maps." + q); a.src = `https://maps.${c}apis.com/maps/api/js?` + e; d[q] = f; a.onerror = () => h = n(Error(p + " could not load.")); a.nonce = m.querySelector("script[nonce]")?.nonce || ""; m.head.append(a) })); d[l] ? console.warn(p + " only loads once. Ignoring:", g) : d[l] = (f, ...n) => r.add(f) && u().then(() => d[l](f, ...n)) }) ({ key: "myHiddenApiKey", v: "weekly" });</script> </body> </html> 这是我运行应用程序时得到的结果: 开发工具没有给出任何错误。 我只是看了他们的例子,看来你缩小的js代码只是为了导入库。添加脚本以在其之后实际渲染地图: <script> let map; async function initMap() { const { Map } = await google.maps.importLibrary("maps"); map = new Map(document.getElementById("map"), { center: { lat: -34.397, lng: 150.644 }, zoom: 8, }); } initMap(); </script>
我正在尝试使用英国县地图创建热图。我已经尝试了几个星期但没有成功。 这是我拥有的数据示例: County_name 标准化计数 纬度 经度 20 ...
我有一个电子表格,其中包含人物、日期、事件、地名、纬度和经度的列。这是多年家谱研究的结果,显示了出生、结婚和死亡
我正在尝试使用英国县地图创建热图。我已经尝试了几个星期但没有成功。 这是我拥有的数据示例: 县名归一化计数纬度...