今天完成了Python 的RadViz方法到Javascript的移植,我实现的可视化与原始的不太一样。区别在于没有原来的类别信息,默认都是同一类的,并且按时间增加的顺序颜色由浅到深的进行映射,主要用于多维时序数据的可视化。
RadViz方法参考论文Hoffman P, Grinstein G, Marx K, et al. DNA visual and analytic data mining[C]. Visualization‘97. Proceedings. IEEE, 1997: 437-441.
网上已经有的Python实现是用pandas,数据是模拟的数据,代码示例如下:
from pandas import read_csv from pandas.tools.plottingmy import radviz import matplotlib.pyplot as plt data = read_csv(‘sensor.csv‘, sep=‘,‘) radviz(data, ‘Name‘,None,‘Greens‘) plt.show()
效果如图:
我基于Html5的canvas画布,参考论文和Python的pandas库实现,将该方法移植成Javascript版本。
添加了自己修改的方法,主要是增加了颜色映射,代码上传到github上,地址为https://github.com/skyfirezju/Radviz
效果如图: