您的位置:首页 > 其它

润乾报表使用DIV层实现坐标差值的算法

2012-05-28 09:12 676 查看
在润乾报表统计图中,其X轴坐标并不是从展示页面的最右方0像素开始的,而是有一个偏移量像素数。这个偏移量像素数包括四个部分:

1、纵轴标题、纵轴标签、图例(如果图例在右方)、横轴起始点和横轴数据起始点之间的间隔。

在这4个影响偏移量的部分中,只有两个部分可以通过报表设计器控制:第一个是纵轴标题,可以保留其为空直接去除;第二个是图例,可以选择不显示图例去除,而纵轴标签和数据起始点间隔两个因素不能通过报表设计器来控制。

使用DIV层来控制,其基本思路是在上层的DIV层中,通过JS编程,监听鼠标拖拽事件,从而获得当前鼠标所在的X轴坐标点像素。然后通过一定的算法,转换为下层DIV中该点在统计图中对应的横轴统计图坐标。

其算法为:

(统计图中指定点对应的横轴统计图坐标值*相邻坐标值间隔像素)+ 偏移量像素数 = 上层DIV中当前坐标的横向像素数

在这个算法中,需要细化的部分是:相邻坐标值间隔像素,需要固化的部分是:偏移量像素数。

首先细化相邻坐标值间隔像素数,其值等于(数据终止点像素-数据起始点像素)/数据间隔数。

然后固化偏移量像素数,包括:

1、去除纵轴标题

2、不显示图例

3、固定纵轴标签

3、固定横轴数据点的个数

然后根据算法,解一个1元1次方程即可倒推出横轴统计图的坐标值,然后可将该值传入其他报表做进一步的分析和运算。

文章转自:http://www.runqian.com.cn/archives/4555.html/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: