无法向高图区域添加点
Unable to add point into highchart area
我使用highchart js来可视化我的数据,类别是一个时间戳数组(以毫秒为单位),它工作得很好,但是我需要使其实时,每20秒更新一次。
我试图使用highchart提供的addPoint函数向当前图表添加新的点,我得到了一个错误www.highcharts.com/errors/19,它说
刻度太多
当您尝试在轴上应用太多刻度时,会发生此错误,特别是当你添加的刻度超过轴像素长度时。在练习一下,把虱子加得太密集是没有意义的不能彼此区分。错误的一个原因可能是您设置的tickInterval对于数据值来说太小了的范围内。一般来说,tickPixelInterval是一个更好的选择自动处理。另一种情况是类别在日期时间轴上,这将导致Highcharts尝试自1970年以来,每毫秒加一个刻度。
这是我的小提琴http://jsfiddle.net/ndkhoiits/5jh93/
chart: {
type: 'area',
events: {
click: function () {
var series1 = this.series[0];
var series2 = this.series[1];
// Add more 20 seconds
var x = series1.points[series1.points.length - 1].category + 20 * 1000;
//error here
series1.addPoint([x, 1000], true, true);
}
}
},
请帮忙检查我如何在图表中添加新的点,另外我认为我们应该使用type is datetime作为xAxis,但我不知道如何使用,如果你可以,请给我解决方案
问题是您将分类xAxis与日期时间xAxis混合在一起。
类别在显示一些…时很有用。类别在x轴上。比如水果、汽车、浏览器共享等
在你的例子中,你应该使用datetime from beginning。你应该修改:
- 从xAxis中删除类别
-
连接
categories
与site1
、site2
,例如:for(var i = 0; i < site1.length; i++){ site1[i] = [ categories[i], site1[i] ]; site2[i] = [ categories[i], site2[i] ]; }
现场演示:http://jsfiddle.net/5jh93/1/
我已经从jsfiddle通过你的代码,似乎你已经在一个JS中编写了整个代码。我还在我们的应用程序中使用了highcharts,并在提供吞吐量值(每2秒上传/下载一次)方面付出了很多努力。我们使用的是对象字面方法。我们已经把我们的代码放在一个js和js包含几个函数,如init(初始化值和创建对象的图表使用新动态i.e.)。
var myplot = {
init : function() { }
});
chart = new Highcharts.Chart({
//here u can write the code that u need to draw with series object
}
drawmyplot : function(val1,val2){
var x = series1.points[series1.points.length - 1].category + 20 * 1000;
series1.addPoint([x, val1], false, true);
series2.addPoint([x, val2], false, true);
$(".firstValue").text(val1 * 1000,1);
$(".secondValue").text(val2 * 1000,1);
}
然后你可以从另一个js中初始化myplot的对象(例如init函数)并使用myplot对象调用后续函数。我希望这对你有帮助。
登记
- FabricJs-限制主对象内添加对象的移动区域
- 将字母添加到文本区域的末尾
- TinyMCE在新添加的文本区域
- 如何将表格中的文本添加到使用按钮输入的文本区域
- 为提交文本区域添加输入
- 通过点击文本区域添加和删除多个标签
- tinyMCE不会添加特定文本区域的Control
- Javascript:Unicode符号选择器(用于将数学符号添加到文本区域)
- 将伪元素添加到<文本区域>
- 如何使用 jQuery 在文本区域中的每一行添加文本
- 将数组中的数据作为段落添加到一个文本区域
- 将空格添加到文本区域
- 通过按钮将不同的文本添加到文本区域-不起作用
- 使用Javascript在文本区域中添加新行
- 将光标保持在文本区域,每次单击都添加每个内容
- 将文本区域的值添加到已填充的输入中
- 如何通过输入数字值动态添加文本区域输入?AngularJs.
- 如果存在多个现有值,则向文本区域值添加分隔符 (Javascript)
- 如何在所有浏览器中向文本区域中的选定文本添加 标记
- DatePicker添加区域设置jQuery