想做一个监控类的图表动态更新页面,有啥轮子可以复用?

2017-02-21 22:05:16 +08:00
 hunk
想做一个图表页面,数据动态更新,初步考虑数据定时生成 json 文件,方便缓存,前后端可以分离。
vue 很流行,图表想用 highchart 试试,数据方便没想好,除了 mysql 保存时间序列类数据还适合用啥?
项目是朋友一起做的,一半使用,一半想练手,只是想做的漂亮些。
5878 次点击
所在节点    程序员
18 条回复
star29
2017-02-21 22:44:20 +08:00
目前用 Echarts ,要相信国产的会更好的
Allianzcortex
2017-02-21 22:48:31 +08:00
一直用 HighCharts 的路过。。 http://allianzcortex.me/2016/09/08/Data-Visualize-With-Flask-And-Highcharts/ 动态更新的话应该是 Ajax 监控后端数据变化吧?
BlueWolf
2017-02-21 22:49:42 +08:00
时间序列数据,可用 influxdb
gwind
2017-02-21 22:50:53 +08:00
参考下 grafana , 先前一直想用 D3.js , 后来发现 D3 直接写还是要求很高的。有很多基于 D3 的好项目, LZ 可以找找看。
jimzhong
2017-02-21 22:51:06 +08:00
用过 highcharts+websocket 实现动态更新。用 addpoint 就好了
gwind
2017-02-21 22:51:43 +08:00
@BlueWolf influxdb 非常优秀,一直在用,另外也可以考虑 Elasticsearch
BlueWolf
2017-02-21 22:56:43 +08:00
@gwind ElasticSearch 做时间序列数据存储时,需要配置下 mapping ,关闭 all 和 source ,操作稍微复杂些,不能“开箱即用”;不过好处是可以分布式、多副本
gwind
2017-02-21 23:20:26 +08:00
@BlueWolf 是的, influxdb 做到了开箱即用。
influxdb 的“定义”了时序数据库。 Elasticsearch “定义”了搜索。
实际应用要看项目需求去搭配,各有擅长的领域,但也有交集,所以 grafana 才同时支持这两种类型的 datasource (他们各自还有个应用堆栈: TICK 和 ELK )
tedzhou1221
2017-02-22 00:44:23 +08:00
百度 echarts
superdong
2017-02-22 10:03:13 +08:00
我记得不久前,可能是十几个小时前有个 V 友就造了 Vue2.0 +某 charts 的轮子。
可惜我竟然找不到了,找不到了…… Google 大法都不管用,估计还没被收录。
(借楼一用,搭车问一下,那个帖子的地址,我仿佛是失忆了,后悔当时没及时点开帖子看内容)
hunk
2017-02-22 14:13:04 +08:00
@star29 国产的是好,使用略复杂,也是看了 v2 朋友的反馈,用 highchart 比较全面。偷懒。
@Allianzcortex js 刷新获取数据,还是很方便的,后端生成 js 数据。
@BlueWolf 谢谢,也在纠结要不要尝试 influxdb ,毕竟还有些数据库需要保存, mysql 恐怕也少不了。涉及 2 种以上的数据库,要不要试试呢。。。
@gwind 谢谢, grafana 先收藏着,以后慢慢看。
@jimzhong websocket 是个新思路,一直想的简单,直接刷新呢,数据少,效率上还顶的住。
@gwind Elasticsearch 比较重,目前感觉没必要上。数据是一方面,图表还是想漂亮点,能自己控制比较好。
hunk
2017-02-22 14:35:13 +08:00
我想存储的是心跳,体温等健康数据, influxdb 是否能永久保存,是否需要再存一份在 mysql 中?
yonoho
2017-02-22 15:27:45 +08:00
influxdb 据说很好用,单机很快。我们用的 opentsdb 集群,感觉专用的时间序列数据库在使用上还是更加方便的,尤其应对复杂查询的时候,可以少造很多轮子。

凡是叫做 db 的东西,持久化都是没问题的,不用考虑 mysql 了我感觉。
lIlIlIlIlIlIlIlI
2017-02-22 17:23:16 +08:00
感觉动态数据方面, highcharts 比 echarts 的数据结构更清晰
LeeSeoung
2017-02-23 09:51:24 +08:00
Justineo
2017-02-23 12:20:27 +08:00
用 Vue + ECharts 的话,可以试试我这个: https://justineo.github.io/vue-echarts/demo/
superdong
2017-02-24 09:26:18 +08:00
@LeeSeoung 应该不是这个,我记得是用 Vue2.0 做的
可能是这个 https://github.com/hchstera/vue-charts
@Justineo 你的也不错
simeon
2022-01-14 09:51:54 +08:00
@hunk 楼主还在做这类的开发嘛?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/342178

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX