1. 你要再打什么是jqPlot的。重绘图()方法当你绘制新的章程。改变你的ajax调用看起来像这样:
创新互联建站是专业的竹山网站建设公司,竹山接单;提供网站制作、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行竹山网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
$.ajax({
url: '/Home/ChartData',
type: 'GET',
data: { Id: Id },
dataType: 'json',
success: function (data) {
$.jqplot('chartDiv', [a, b], CreateBarChartOptions(xAxis)).replot();
}});
+
2. 尽量让你的图表对象作为全局变量在脚本如下:
var plot1 = $.jqplot('chartDiv', [a, b], CreateBarChartOptions(xAxis));
然后复位的推动者,并重新绘制axesScale为:
var newData = [['a',1],['b',2],['c',3]];
plot1.series[0].data = newData;
plot1.resetAxesScale();
plot1.replot();
参考: +
3. 而生成的脚本来找到搬运工的答案,跳我要发布此就在这里。上述针。 我创建了全局变量,plot3在我的脚本文件。然后创建下面的函数。如果这就是所谓的布尔重绘,它决定如果我需要销毁和重画或画的第 代码是什么优先位的作用是获取数据从我的JQGrid的,(这是在不同的函数正在更新),并更新数组。第二位 CodeGo.net,我确定蜱间隔,在x轴取决于我的漫步者的长度。
function DrawGraph(bRedraw){
var testTimes = [];
testTimes = $('#polarizationTable').jqGrid('getCol', 'TestTime', testTimes, false);
var RdgA = $('#polarizationTable').jqGrid('getCol', 'RdgA', RdgA, false);
var RdgB = $('#polarizationTable').jqGrid('getCol', 'RdgB', RdgB, false);
var readingLineA = [];
for (var i=0; itestTimes.length; i++){
readingLineA.push([testTimes[i], RdgA[i]]);
}
var readingLineB = [];
for (var i=0; itestTimes.length; i++){
readingLineB.push([testTimes[i], RdgB[i]]);
}
var maxX = $("#testLength").val();
var lengthX = testTimes.length;
var tickIntervalX = Math.round(maxX/10);
if(bRedraw == true)
{
plot3.destroy();
bRedraw = false;
}
if(bRedraw == false)
{
plot3 = $.jqplot('chart3', [readingLineA, readingLineB],
{
title:'Graph',
series:[{label:'Reading - A'}, {label:'Reading - B'} ],
legend:{show:true, location:'se'},
// You can specify options for all axes on the plot at once with
// the axesDefaults object. Here, we're using a canvas renderer
// to draw the axis label which allows rotated text.
axes:{
xaxis:{
label:'Minutes',
syncTicks: true,
min: 0,
numberTicks: 10,
tickInterval: tickIntervalX,
max: maxX*1.1,
labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
labelOptions: {
fontSize: '12pt'
},
},
yaxis:{
label:'Data',
min: 0,
numberTicks: 10,
labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
labelOptions: {
fontSize: '12pt'
}
},
}
});
}
}
+
4. 之前每个重绘图形,只是摧毁existing1。
$.ajax({
url: '/Home/ChartData',
type: 'GET',
data: { Id: Id },
dataType: 'json',
success: function (data) {
if(plot)
{
plot.destroy();
}
var plot=$.jqplot('chartDiv', [a, b], CreateBarChartOptions(xAxis));
}});
+
5. 下面是如何在不重新加载页面动态更新与新的推动者剧情的完整的例子:
div id="chart1" style="height: 300px; width: 500px; position: relative;"/div
buttonNew data point/button
script type="text/javascript"
var storedData = [3, 7];
var plot1;
renderGraph();
$('button').click( function() {
doUpdate();
});
function renderGraph() {
if (plot1) {
plot1.destroy();
}
plot1 = $.jqplot('chart1', [storedData]);
}
function doUpdate() {
var newVal = Math.random();
storedData.push(newVal);
renderGraph();
}
/script
它是这个家伙的帖子的简化版本:JQPlot自动刷新包机与动态的ajax推动者 +
6. 也许这个“梦想成真。我,另一方面是有问题的得到重新绘制在所有的工作,但我会dataRenderer。
$.ajax({
url: '/Home/ChartData',
type: 'GET',
data: { Id: Id },
dataType: 'json',
success: function (data) {
$('chartDiv').empty();
$.jqplot('chartDiv', [a, b], CreateBarChartOptions(xAxis));
}});
+
7. 希望这有助于
jQuery(document).ready(function(){
jQuery.ajax({
url: '/review_graphs/show',
type: 'GET',
success: function (data) {
var plot1 = jQuery.jqplot('chartDiv', [data,data],
{
title: 'Bianual Reviews percentage',
series:[
{
renderer:jQuery.jqplot.BarRenderer,
label:'Average',
stackSeries: true,
dragable: {color: '#ff3366',constrainTo: 'x'},
trendline:{show: false}
},
{
label:'Trend Line',trendline:{show: false}}
],
legend: {
show: true,
placement: 'outsideGrid'
},
axesDefaults: {
tickRenderer: jQuery.jqplot.CanvasAxisTickRenderer ,
tickOptions: {
angle: -30,
fontSize: '10pt'
}
},
axes: {
xaxis: {
renderer: jQuery.jqplot.CategoryAxisRenderer
}
}
});
}});
});
+
8. 在我得到的是,在div中,你画,显然,在您绘制新图。
$('#graph_area).children().remove();
+
9. (''); 哪里是DIV创建包机包机。 这样做的伎俩,没有什么花哨通过有效的。 +
你的表述真的很难看懂,不过感觉会用到下面这几个方法:
var aY=a.offset().top;//获取元素a的Y值
var aH=a.height();//获取元素a的高度
var bY=b.offset().top;//获取元素b的Y值
var bH=b.height();//获取元素b的高度
$(this).offset().top(val);//val是数字或者数字变量
$(this).height(val);//val是数字或者数字变量
$(this).hide();//隐藏不占位;
$(this).css("visibility","hidden");//隐藏占位;
可以灵活组织逻辑一下应该可以实现你要的效果,祝你好运。
1.引入 ECharts
!DOCTYPE htmlhtmlhead meta charset="utf-8" !-- 引入 ECharts 文件 -- script src="echarts.min.js"/script/head/html
2.绘制一个简单的图表
在绘图前我们需要为 ECharts 准备一个具备高宽的 DOM 容器。
body !-- 为 ECharts 准备一个具备大小(宽高)的 DOM -- div id="main" style="width: 600px;height:400px;"/div/body
3.然后就可以通过 echarts.init 方法初始化一个 echarts 实例并通过 setOption 方法生成一个简单的柱状图,下面是完整代码。
!DOCTYPE htmlhtmlhead meta charset="utf-8" titleECharts/title !-- 引入 echarts.js -- script src="echarts.min.js"/script/headbody !-- 为ECharts准备一个具备大小(宽高)的Dom -- div id="main" style="width: 600px;height:400px;"/div script type="text/javascript" // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById('main')); // 指定图表的配置项和数据 var option = { title: { text: 'ECharts 入门示例' }, tooltip: {}, legend: { data:['销量'] }, xAxis: { data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"] }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: [5, 20, 36, 10, 10, 20] }] }; // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); /script/body/html