高图表复杂的列范围图
Highcharts complex columnrange graph
我需要创建一个图表来显示用户输入的睡眠数据。用户将输入开始日期时间和结束日期时间,以及质量的数值。图形必须将 y 轴作为时间,从下午 01:00(分钟)到下午 12:59(最大值)。x 轴必须是睡眠发生的日期:"2015 年 1 月 1 日 - 2015 年 1 月 2 日"(即一个"点"的刻度标签)(请参阅小提琴进行澄清)。最后,"点"将根据睡眠质量值进行颜色编码。正在使用的数据的格式为:
{
fromDate: "01/18/2015 22:15:00",
toDate: "01/19/2015 06:15:00",
value: 7
}
我遇到的问题是让所有这些正常工作。似乎对于列范围图,我必须使用类别 x 轴。恐怕这不会像日期时间 x 轴那样有效,尤其是对于较大的数据集。
我创建了一个小提琴。它处于我需要的正确轨道上,但如您所见,存在一些问题:1. 数据/逻辑已纵以用于小提琴,但在处理实际日期时间时会更加困难。2. 列范围是实现我想要的的正确图形类型吗?3. 如何使工具提示格式化为睡眠质量值和日期时间范围?(我尝试添加显式类别,但这弄乱了 x 轴。[刻度标签消失了])4. "点"不直接与 x 轴刻度线对齐(工具提示也未对齐)
似乎当我尝试添加一个功能时,另一个功能开始出现故障。
http://jsfiddle.net/XBmB5/59/
此图的任何指导将不胜感激。
"似乎对于列范围图,我必须使用类别 x 轴"
我不确定你的意思 - 在这种情况下,您可以对 x 和 y 轴使用日期时间轴。
Example
这里:
- http://jsfiddle.net/jlbriggs/cvfoqo7r/
重要的是
1)对于Y轴,由于时间是您想要的,因此您需要建立基准日期,并且可以将时间详细信息添加到这些基准日期中(请参阅示例顶部的curDate/prevDate内容)
2)您可以使用格式化程序中的dateFormat()方法为轴标签,工具提示,数据标签等建立标签格式
{{编辑评论中的问题
要获取本地时间,请在全局设置中将 useUTC 设置为 false:
Highcharts.setOptions({
global:{
useUTC: false
}
});
要按照以前的方式设置图例,只需恢复到以前的系列结构即可。
我在我的示例中简化了它纯粹是为了我自己的方便,但只要正确定义每个数据点,无论您是否像我的设置那样拥有所有系列,还是像您的初始设置那样拥有多个系列,都不会有什么区别。
- 正在全局范围中查找JavaScript函数
- 如何通过数组更新角度子范围
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- 在Redux中,我应该在哪里编写复杂的异步流
- HTML范围:动态设置值属性
- "实例范围”;TypeScript类的getter/setter
- jquery日期选择器年份范围默认值
- Jpgraph:如何手动设置X轴和Y轴的范围
- 将复杂对象从angular js传递到web api,它总是返回404
- dropdown.js中的复杂事件处理
- 您有更好的动态方式来缩短复杂的代码jquery吗
- 在对象数组中查找多个值的d3范围
- 相当复杂的Regex
- 动态加载angularjs并生成控制器和范围
- 用Javascript重新格式化复杂文本日期字符串的更好方法
- 如何通过谷歌应用程序脚本从谷歌文档中的位置确定命名范围
- 高图表复杂的列范围图
- 复杂 JSON 处理期间的“范围错误: 超出最大调用堆栈大小”
- JS复杂的范围按摩
- 运行范围复杂初始变量