0

我有一个为客户构建的报告,我需要在其中绘制 x 0-100,y 0-100。假设我有以下几点:

   0,  0
  2,  24
 50,  70
100, 100

我需要将这些表示为平滑折线图,因为它的应用是印刷机的网点增益图。

这就是问题所在。这条线从 100,100(右上)到 2,24 都很好。但随后发生的情况是从 2,24 到 0,0,线从图形左侧弯曲,然后向下弯曲到 0,0。想象一下它把一个点放在-10,10。

我知道这是因为它使用的通用贝塞尔曲线算法和控制点的大分离,因此对其进行了很大的加权。

但是我想知道是否有人知道我可以控制它的方法。我已经尝试在现有控制点之间添加平均点,但它仍然曲线偏离图表,就好像它仍然很重。

我能想到的唯一其他答案是自定义绘制图表或查看Dundas Charts并使用其GDI+绘图支持。

但在我走那条路之前,有人有什么想法吗?


事情就是这样。我知道如何手动绘制曲线。问题在于 2 到 50 之间的权重如此之高。我尝试在低点和中点添加点,但它仍然在边缘弯曲。我将不得不去查看源代码并修改图表,看看我是否可以获取屏幕截图。

现在我只是让图表在 2 处停止,直到我能解决这个问题。

4

2 回答 2

2

替代文字 http://img140.imageshack.us/img140/1279/smoothlinebezierxl0.jpg

(提供行为图片以帮助您获得更好的答案)。

对于那些有理论的人,您也可以在 Excel 中进行尝试(不仅仅是 Reporting Services)。

您在问题中提到了添加点,但似乎在问题区域附近添加插值点具有预期的效果(例如 { (1,12), (1.5, 18) })。不过,这充其量只是一个笨拙的“解决方案”。

于 2008-09-20T21:50:20.313 回答
0

您可以尝试对中间的点使用余弦插值。

于 2008-09-20T22:40:18.617 回答