数据图表

所属分类: 网络编程 / CSS/HTML 阅读数: 1575
收藏 0 赞 0 分享
现在我们来看看VML的一些应用。数据图表可以说是VML的拿手好菜。绘制图表,最重要的步骤是把数据转换成坐标。由于VML是矢量的, 给数据的取值范围有很大的自由度,因为你可以用带小数的坐标值,也可以是非常大的数据做为坐标值。
    在做图表之前,必须明确一些事情,要把图表看成一个整体,这意味着使用 Group 将 VML 包容起来;x,y 轴是在第四像限里面的;VML的大小由 width,height 决定,而不是由coordsize决定。接下来,让我们看看几个经典的图表。
    曲线图(走势图):看起来是曲线,其实细分起来就是一段段小折线组成的。所以我们可以选择PolyLine来做。首先我们来画坐标轴:
<v:group ID="group1" style="WIDTH:500pt;HEIGHT:300pt" coordsize="5000,3000">
  <v:line from="200,100" to="200,2800" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
    <v:stroke StartArrow="classic"/>
  </v:line>
  <v:line from="200,2800" to="4800,2800" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
    <v:stroke EndArrow="classic"/>
  </v:line>
  <v:rect style="WIDTH:4900px;HEIGHT:3000px" coordsize="21600,21600" fillcolor="white" strokecolor="black" />
</group>

    也许你希望显示坐标轴上的刻度,这也很容易实现,我们可以用一个绝对定位的P来做坐标,在Group里面,使用绝对实际上是相对Group的相对定位的。坐标值需要你自己调整了。因为我们画分横坐标使用的是 px=200+73*i;(其中200是距离左边的距离) 纵坐标是 py=2800-73*i; (因为总共的高度是2800,所以要用减去)现在,把数据转换成坐标变得很容易了。 当然这里的 i 是 0,1,2..7 ,也可以是你具体的数据,换算的时候,只需要按照比例得到坐标值,比如说你的纵坐标的价值是从 100,200,300,..700 相应的反应到坐标上就是 px=200+73*i*1/100 (其中,i为数据值,1/100是坐标值和数据的比例)


    画图表的准备工作已经全部做好了,现在就差数据了。有了数据,把数据灌输到 PolyLine 里面,曲线就显示出来了。现在我们使用一些假数据,看看上面的效果如何!
    本节例子比较多,请访问下页。
更多精彩内容其他人还在看

推荐深入理解css中的position定位和z-index属性

推荐深入理解css中的position定位和z-index属性
收藏 0 赞 0 分享

不错的10个你未必知道的CSS技巧

不错的10个你未必知道的CSS技巧
收藏 0 赞 0 分享

一点小小的创意css鼠标放上去则显示电话号码

一点小小的创意css鼠标放上去则显示电话号码
收藏 0 赞 0 分享

固定表格的高度超过指定高度就隐藏的方法

固定表格的高度超过指定高度就隐藏的方法
收藏 0 赞 0 分享

推荐个Css的filter常用滤波器属性及语句大全

推荐个Css的filter常用滤波器属性及语句大全
收藏 0 赞 0 分享

淘宝段正淳的css笔记大全第1/4页

淘宝段正淳的css笔记大全
收藏 0 赞 0 分享

CSS实现的一个图片放大展示的一种思路

CSS实现的一个图片放大展示的一种思路
收藏 0 赞 0 分享

用css滤镜实现的文字描边效果的代码

用css滤镜实现的文字描边效果的代码
收藏 0 赞 0 分享

用css实现的带阴影的表格效果的代码

用css实现的带阴影的表格效果的代码
收藏 0 赞 0 分享

又一实用的常用CSS缩写语法收集

又一实用的常用CSS缩写语法收集
收藏 0 赞 0 分享
查看更多