gpt4 book ai didi

ruby-on-rails-3 - 使用 dateAxisRenderer 行的 jqplot 不呈现,任何想法为什么?

转载 作者:行者123 更新时间:2023-12-04 07:21:51 25 4
gpt4 key购买 nike

这段代码工作得很好:

在我看来:

<div id="chart1"></div> 

然后是我的js:

$(document).ready(function(){
var plot1 = $.jqplot ('chart1', [[3,7,9,1,4,6,8,2,5]]);
});

当我更改我的 js(从 jqPlot site 复制它)以便我可以在我的 x 轴上包含日期时,只有网格显示没有 x 轴或线(y 轴准确且存在):

不起作用的新js代码:

$(document).ready(function(){

var line1=[['2011-06-30 8:00AM',4], ['2011-7-30 8:00AM',6]];
var plot2 = $.jqplot('chart1', [line1], {
title:'Customized Date Axis',
gridPadding:{right:35},
axes:{
xaxis:{
renderer:$.jqplot.DateAxisRenderer,
tickOptions:{formatString:'%b %#d, %y'},
min:'May 30, 2011',
tickInterval:'1 month'
}
},
series:[{lineWidth:4, markerOptions:{style:'square'}}]
});
});

请注意,我只将日期更改为 2011 年,将 div 的 ID 重命名为“chart1”(如果与 this jQPlot site 相比)并添加了 jqplot.dateAxisRenderer.min.js。

所以现在我有以下插件:

  • “jqplot.canvasTextRenderer.min.js”
  • “jqplot.canvasAxisLabelRenderer.min.js”
  • “jqplot.dateAxisRenderer.min.js”
  • “jqplot/jqplot.canvasAxisTickRenderer.min.js”
  • “jqplot/jquery.jqplot.min.js”

我收到以下 JS 错误:

Uncaught TypeError: Cannot set property 'CanvasTextRenderer' of undefined in jqplot.canvasTextRenderer.min.js:30.

Cannot set property 'CanvasTextRenderer' of undefined in jqplot.canvasAxisLabelRenderer.min.js:30.

Cannot set property 'CanvasTextRenderer' of undefined in jqplot.dateAxisRenderer.min.js:30.

Cannot set property 'CanvasTextRenderer' of undefined in jqplot.canvasAxisTickRenderer.min.js:30.

我在这里做错了什么?任何帮助将不胜感激。我在谷歌上搜索了 2 小时,但没有成功。

最佳答案

我创建了一个纯 html 页面,其中包含您上面的代码,它似乎可以正常工作。

<html>
<head>
<link type="text/css" href="http://localhost/test1/atk4-addons/sterling/jqplot/templates/js/jqplot/jquery.jqplot.css" rel="stylesheet" />
<script type="text/javascript" src="http://localhost/test1/atk4/templates/js/jquery-1.5.1.min.js"></script>
<script type="text/javascript" src="http://localhost/test1/atk4-addons/sterling/jqplot/templates/js/jqplot/jquery.jqplot.js"></script>
<script type="text/javascript" src="http://localhost/test1/atk4-addons/sterling/jqplot/templates/js/jqplot/plugins/jqplot.dateAxisRenderer.js"></script>


<script>
$(document).ready(function(){
var line1=[['2011-06-30 8:00AM',4], ['2011-7-30 8:00AM',6]];
var plot2 = $.jqplot('chart1', [line1], {
title:'Customized Date Axis',
gridPadding:{right:35},
axes:{
xaxis:{
renderer:$.jqplot.DateAxisRenderer,
tickOptions:{formatString:'%b %#d, %y'},
min:'May 30, 2011',
tickInterval:'1 month'
}
},
series:[{lineWidth:4, markerOptions:{style:'square'}}]
});
});
</script>

</head>
<body>
<div id="chart1"></div>
</body>
</html>

在 Windows 7 上的 firefox 3.6.22 中为我生成以下输出

output of jqplot code

我正在使用 jquery v1.5.1,所以可能更新到最新版本并重试以防万一。

我只需要包含 jquery.js、jqplot.js 和 dateAxisRenderer 就可以正常工作,所以也尝试删除其他渲染器,因为我认为您在提供的代码示例中没有使用任何需要它的选项。

虽然这段代码单独运行良好,但我在其他地方读到一个问题,关于一些浏览器没有以正确的顺序加载所有内容并且需要在 javascript 之前加载 css 的问题。

你用 ruby​​ on rails 标记了它,所以如果你从一些框架代码调用它并且它也加载其他东西,那么顺序可能有问题所以改变它可能会有所帮助。

关于ruby-on-rails-3 - 使用 dateAxisRenderer 行的 jqplot 不呈现,任何想法为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7191643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com