put Google line chart in Leaflet popup(将谷歌折线图放在传单弹出窗口中)
问题描述
我正在尝试将 Google 折线图插入独立的 Leaflet 弹出窗口.我按照here 的指示在标题中有图表生成代码,并且然后我将 div 元素放在弹出窗口中.
I'm trying to insert a Google line chart into a standalone Leaflet popup. I have the chart generation code in the header as instructed here, and then I put the div element in the popup.
var popup = L.popup()
.setLatLng([51.5, -0.09])
.setContent('<div id="curve_chart" style="width: 400px; height: 200px"></div>')
.openOn(mymap);
这只会创建一个空的 400x200 弹出窗口.我很确定问题的出现是因为图表生成脚本找不到 div 元素,因为它还不存在,但我不知道如何解决它.我尝试在声明弹出窗口后移动脚本,但这并没有做任何事情.如何在弹出窗口中显示图表?
This just creates an empty 400x200 popup. I'm pretty sure that the problem arises because the chart generation script can't find the div element because it doesn't exist yet, but I don't know how to fix it. I tried moving the script after the declaration of the popup, but that didn't do anything. How can I display the chart in the popup?
推荐答案
尝试构建类似于以下代码片段的代码...
try structuring the code similar to the following snippet...
1) 先加载谷歌图表
2) 然后加载你需要的其他东西
2) then load other stuff you need
3) 然后尝试打开弹出窗口
3) then try opening the popup
// run this before anything else on the page
google.charts.load('current', {
callback: initPage,
packages: ['corechart']
});
function initPage() {
// do normal start up stuff here
// ...
// open the popup
var popup = L.popup()
.setLatLng([51.5, -0.09])
.setContent('<div id="curve_chart" style="width: 400px; height: 200px"></div>')
.openOn(mymap);
drawChart();
}
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows([
['Mushrooms', 3],
['Onions', 1],
['Olives', 1],
['Zucchini', 1],
['Pepperoni', 2]
]);
var container = document.getElementById('curve_chart');
var chart = new google.visualization.LineChart(container);
chart.draw(data);
}
这篇关于将谷歌折线图放在传单弹出窗口中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:将谷歌折线图放在传单弹出窗口中
- Css:将嵌套元素定位在父元素边界之外一点 2022-09-07
- 失败的 Canvas 360 jquery 插件 2022-01-01
- 使用RSelum从网站(报纸档案)中抓取多个网页 2022-09-06
- addEventListener 在 IE 11 中不起作用 2022-01-01
- Flexslider 箭头未正确显示 2022-01-01
- 400或500级别的HTTP响应 2022-01-01
- 如何使用 JSON 格式的 jQuery AJAX 从 .cfm 页面输出查 2022-01-01
- CSS媒体查询(最大高度)不起作用,但为什么? 2022-01-01
- Fetch API 如何获取响应体? 2022-01-01
- Quasar 2+Apollo:错误:找不到ID为默认的Apollo客户端。如果您在组件设置之外,请使用ProvideApolloClient() 2022-01-01