日期:2014-05-19  浏览次数:20478 次

如何实现下面的图表,说说原理和使用什么控件就行.能提供源码更好了(图表区没人回答,只好发这了)
问题四

问题三

问题二

问题一   ========  
                10%         20%       30%       40%       50%       60%   .................
               
很同意(红)         同意(绿)           中立(蓝)       不同意(黄)     非常不同意(紫)

比如说问题一,我有 "很同意 "50%   那么我就画一条柱,用红色表示, "中立 "   30%,我就在同一行上,用蓝色的表示...依次类推...

原理是什么?用什么实现比较方便?因为是初次接触图表,所以请达人指点.


------解决方案--------------------
我想应该是用div图层叠加吧,然后控制相应图层的width属性 ,如果是asp.net开发的建议研究一下水晶报表,里面有类似的表格制作。
------解决方案--------------------
WebChart的代码

ChartPointCollection datacount = new ChartPointCollection();//绘制一个柱状
datacount.Add(new ChartPoint(dt.Rows[i][ "hh "].ToString(), float.Parse(dt.Rows[i][ "count "].ToString())));//绑定数据 x,y
Chart cl = new ColumnChart(datacount, Color.Red);//控制的是颜色
cl.Legend = "浏览次数 ";//控制小方格的显示文字
cl.Fill.Color = Color.Tomato;//控制的是小方格和坐标点里的背景颜色

cl.LineMarker = new CircleLineMarker(2, cl.Fill.Color, Color.Black);//第一个参数控制坐标点的大小
cc1.Charts.Add(cl);
cc1.RedrawChart();