关于各种采样数据的曲线图表的数据清洗,拟合,图表生成,局部放大,多种数据对比分析问题 http://www.wave12.com/web/SigCon.asp?bCate=41&sCateName=%B9%A6%C4%DC%BD%E9%C9%DC&ID=143&CateName=wsChart4.5(DLL) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 难得遇到个搞统计的1 采样点不足时如何做数据拟合,(1)重采样,加密采样点,也就是时间间隔减小(2)视乎算法公式模拟,例如直线就好办,不存在采样不足,两点就够其他的话,用最近似的曲线画,例如贝塞尔2 采样点过多时,如何进行数据的选取这个好办,弃去部分采样点(不过这里也要用有效的规则)或者用不同的间隔取中间值(中间值不一定就是平均值,视乎算法确定)3 (可以不考虑)对于坏数据的清洗这个不知道你想怎样,坏数据可能需要模式识别(我的学习研究对象),原理比较麻烦不过也可以自定义数据范围,例如彩票开123456是不可能的,哈哈4 采样数据的曲线与理想曲线的对比分析,或者2组采样数据之间的比较(比如:在某点,2组数据的差过大就认为在该点有异常发生)其实做两条曲线叠加就很直观了5 图表的生成建议svg/vml等方式实现,视乎客户端或者执行端而定,这两个绝对比生成像素图有用并且可编辑/可编程6 生成图表中局部的放大(其中,5 6 可以以简单的方式实现,不一定要多么完美:P)如果svg/vml部放大基本不成问题,因为是矢量图 简单的说就是1、插值2、抽样、均值3、滑动均值4、方差复杂了就不属于php的范畴了,这是应用数学讨论的问题算法复杂时,也不是脚本级语言所能胜任的 网络程序好难做到“自学习”,因为web服务器的承受力不是为这个设计的基本上应该预设一些类型,根据数据指定图片的局部放大有一个最原始的办法把图片做成很大,客户端显示缩小的,然后通过javascript取原图的部分clip看上去就是放大的效果如果是流量分析方面,有很多现成的流量分析程序,不妨用来参考 具体情况要具体分析,的确也存在一些成熟的算法。可根据需要选用“比如采样点很多时,将采用哪种图表显示”着表示你对问题的理解是很粗浅的。选用何中种图表来展现数据并非随意的。图表局部放大问题这个问题应倒过来考虑。由于web方式中你不可能将精细的图表1:1的呈现在浏览器中实际呈现的是“缩略”方式的图表于是局部放大也就是重新生成局部的精细图表实际的数据是一个局域网的网络流量的采样数据假定每秒采样一次,那么日流量图就有24*60*60=86400个数据可用以折线图为例,横轴为时间全部显示至少需要86400象素宽的区域,就是八十多个屏幕宽。显然是不可取的于是你就需要减少横轴分辨率为分或小时方法可以是抽样 取每个0秒时刻的值作为该分钟的值,简单但不精确,因为那个时刻可能出现极大极小值均值 取60秒的平均值,作为该分钟的值,计算量不大,可能在分与分间出现阶跃滑动均值 去前n分到后n分的平均值,作为该分钟的值,计算量稍大,但可保证分与分之间平滑过渡其他的算法由于计算量较大,不宜在web方式中采用放大时,也就取需要的区段的值以较高的分辨率显示。注意,最多只能精确到秒,因为假定每秒采样一次用再高的分辨率就要“插值”了,这样也就是使曲线看上去“平滑”些,当然也有一定的参考价值 ...看来各位理论不错,但似乎缺乏实际考虑。不过,方法的可行性上倒是论述了一些,让我明白该如何选择了。呵呵。我最需要的是做这件事的资源,希望各位能提供一些:P感谢 huacha()也希望老大们给点有价值的资源:P 或许是我没有说清楚吧,数据源不是一个局域网,而是很多,是以每个这样的局域网络为单位的。这里就涉及到数据量的问题,因此采样的时间间隔和数据量就是一个互相矛盾的条件了。实际情况是采样点不可能很密集。:)目前2(唠叨老大),4(我想暂时先用最简单的方法),5(huacha())已经有了大致目标和方法,3暂时不考虑吧。。1,6其实是一个问题,自认还没有准确的答案,插值是肯定的,但是哪种插值方法即可行又能较准确的反映实际情况呢?仅仅是一个答案,当然这个不好定论,如果各位有好的链接地址或者资料名目,请告知,我想要得也仅此而已,谢谢:P PHP 按位取反的问题 html5中的<input>标签中type属性里面的range,date,datetime怎么使用 网购海量订单数据如何保存? 不会处理这个传递过来的url了,请求帮助,谢谢~~ sql语句中能否直接把截取的字符串当作where条件 寻找网络编程高手当老师 PHP连接MySQL典型问题? 数据不能录入库,为何呢? 这样的产品展示网站谁比较拿手 求救!急!!关于写入文章的问题! 求助:一个关于读写日志文件的问题!大家给个思路 象本站首页和Sina首页中,在文章列表中一行可能显示两条或多条,以适应排版更漂亮是怎么实现的?是手工编辑的吗?
(1)重采样,加密采样点,也就是时间间隔减小
(2)视乎算法公式模拟,例如直线就好办,不存在采样不足,两点就够
其他的话,用最近似的曲线画,例如贝塞尔
2 采样点过多时,如何进行数据的选取
这个好办,弃去部分采样点(不过这里也要用有效的规则)
或者用不同的间隔取中间值(中间值不一定就是平均值,视乎算法确定)3 (可以不考虑)对于坏数据的清洗
这个不知道你想怎样,坏数据可能需要模式识别(我的学习研究对象),原理比较麻烦
不过也可以自定义数据范围,例如彩票开123456是不可能的,哈哈4 采样数据的曲线与理想曲线的对比分析,或者2组采样数据之间的比较(比如:在某点,2组数据的差过大就认为在该点有异常发生)
其实做两条曲线叠加就很直观了5 图表的生成
建议svg/vml等方式实现,视乎客户端或者执行端而定,这两个绝对比生成像素图有用
并且可编辑/可编程6 生成图表中局部的放大
(其中,5 6 可以以简单的方式实现,不一定要多么完美:P)
如果svg/vml部放大基本不成问题,因为是矢量图
1、插值
2、抽样、均值
3、滑动均值
4、方差复杂了就不属于php的范畴了,这是应用数学讨论的问题
算法复杂时,也不是脚本级语言所能胜任的
基本上应该预设一些类型,根据数据指定图片的局部放大有一个最原始的办法
把图片做成很大,客户端显示缩小的,然后通过javascript取原图的部分clip
看上去就是放大的效果如果是流量分析方面,有很多现成的流量分析程序,不妨用来参考
着表示你对问题的理解是很粗浅的。选用何中种图表来展现数据并非随意的。图表局部放大问题
这个问题应倒过来考虑。由于web方式中你不可能将精细的图表1:1的呈现在浏览器中
实际呈现的是“缩略”方式的图表
于是局部放大也就是重新生成局部的精细图表
实际的数据是一个局域网的网络流量的采样数据
假定每秒采样一次,那么日流量图就有24*60*60=86400个数据可用
以折线图为例,横轴为时间
全部显示至少需要86400象素宽的区域,就是八十多个屏幕宽。显然是不可取的
于是你就需要减少横轴分辨率为分或小时
方法可以是
抽样 取每个0秒时刻的值作为该分钟的值,简单但不精确,因为那个时刻可能出现极大极小值
均值 取60秒的平均值,作为该分钟的值,计算量不大,可能在分与分间出现阶跃
滑动均值 去前n分到后n分的平均值,作为该分钟的值,计算量稍大,但可保证分与分之间平滑过渡
其他的算法由于计算量较大,不宜在web方式中采用放大时,也就取需要的区段的值以较高的分辨率显示。
注意,最多只能精确到秒,因为假定每秒采样一次
用再高的分辨率就要“插值”了,这样也就是使曲线看上去“平滑”些,当然也有一定的参考价值
不过,方法的可行性上倒是论述了一些,让我明白该如何选择了。呵呵。我最需要的是做这件事的资源,希望各位能提供一些:P感谢 huacha()也希望老大们给点有价值的资源:P
数据源不是一个局域网,而是很多,是以每个这样的局域网络为单位的。这里就涉及到数据量的问题,因此采样的时间间隔和数据量就是一个互相矛盾的条件了。实际情况是采样点不可能很密集。:)目前2(唠叨老大),4(我想暂时先用最简单的方法),5(huacha())已经有了大致目标和方法,3暂时不考虑吧。。1,6其实是一个问题,自认还没有准确的答案,插值是肯定的,但是哪种插值方法即可行又能较准确的反映实际情况呢?仅仅是一个答案,当然这个不好定论,如果各位有好的链接地址或者资料名目,请告知,我想要得也仅此而已,谢谢:P