作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在一个网站上工作,我大量使用 Highcharts 在图表中显示数据。我希望用户能够将每个图表“缩放”到模态窗口中以提高可读性。
我知道如何使用其 API 操作图表,但我不太确定如何克隆图表并使用变量引用新图表?
我做了很多搜索,我发现的只是如何使用 Highcharts 自己的模态库在模态窗口中打开,但我使用的是一个名为 Lightview 的模态库。
最佳答案
我已经使用 jQuery 模式面板完成了这项工作。
单击原始图表时,我将调用一个 javascript 函数 popupGraph,它将通过合并现有 Highcharts 的选项来创建一个新的 Highcharts 。在 modalPanel 的关闭事件中,我正在破坏我们为弹出窗口创建的图表。
希望这有帮助..
我以小尺寸显示的实际图表的代码。
trackingChart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'column',
events: {
load: loadChart,
click: function() {
popUpGraph(this);
}
}
},
xAxis: {
categories: []
},
yAxis: {
min: 0,
},
legend: {
layout: 'horizontal',
backgroundColor: '#FFFFFF',
align: 'center',
verticalAlign: 'bottom',
x: 10,
y: 0,
floating: false,
shadow: true
},
tooltip: {
formatter: function() {
return ''+
this.x +': '+ this.y +' points';
}
},
plotOptions: {
column: {
pointPadding: 0,
borderWidth: 0
}
},
exporting: {
enabled: false
},
series: [{
data: []
}, {
data: []
}]
});
function dummy() {}
function popUpGraph(existingChart) {
var options = existingChart.options;
var popupChart = new Highcharts.Chart(Highcharts.merge(options, {
chart: {
renderTo: 'popup_chart',
height:300,
width:700,
zoomType: 'x',
events: {
load: dummy,
click: dummy
}
}
}));
$( "#dialog").dialog({
autoOpen: false,
height: 350,
width: 750,
modal: true,
show:'blind',
close: function(event, ui) { popupChart.destroy(); }
});
$("#dialog").dialog("open");
}
关于javascript - 在模态窗口中打开 Highcharts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9967149/
我来自 Asp.Net 世界,试图理解 Angular State 的含义。 什么是 Angular 状态?它类似于Asp.Net中的ascx组件吗?是子页面吗?它类似于工作流程状态吗? 我听到很多人
我一直在寻找 3 态拨动开关,但运气不佳。 基本上我需要一个具有以下状态的开关: |开 |不适用 |关 | slider 默认从中间开始,一旦用户向左或向右滑动,就无法回到N/A(未回答)状态。 有人
我是一名优秀的程序员,十分优秀!