SSRS折线图未连接数据点

时间:2011-11-28 02:41:22

标签: join reporting-services graph charts line

我看起来既高又低,似乎无法找到一个看起来很简单的问题的答案(我想)。

我有一个折线图,其中系列中的多个点都有数据,但只有一组点连接起来。

有谁知道这是为什么?这与我的数据有关吗?如果是,我很难看到数据中的任何关系可以解释这种行为。

这就是我的意思:

Messed up data points

正如你所看到的,红色钻石应该连接 - 关于蓝色方块和深蓝色三角形也是如此。有什么想法吗?

如果我的颜色错了,请道歉 - 我是色盲。

3 个答案:

答案 0 :(得分:16)

好的,所以我解决了这个问题。

首先,为了让线条连接起来,您需要为该系列设置EmptyPoint颜色。

  1. 在图表中选择您的系列
  2. 在属性选项卡(不是对话框)中深入查看EmptyPoint属性并将颜色设置为黑色
  3. 这会让他们加入 - 耶!但部分线是彩色,另一部分是黑色,对吗?这有点傻,特别是考虑到你在EmptyPoint上将颜色保持为Automatic是透明的。

    因此,我们需要让系列和EmptyPoint的颜色同步。 使用here中的代码。我在报告的代码中添加了一些代码。

    1)。右键单击报表上的空白区域,然后选择“报表属性”
     2)。在代码选项卡中,粘贴以下内容:

    Private colorPalette As String() = {"#418CF0", "#FCB441", "#E0400A", "#05642E", "#1A3B69", "#BFBFBF", "#E0400A", "#FCB441", "DarkBlue", "Tomato", "Orange", "CornflowerBlue", "Gold", "Red", "Green", "LightBlue", "Lime", "Maroon", "LightSteelBlue", "Tan", "Silver"}
    Private count As Integer = 0
    Private mapping As New System.Collections.Hashtable()
    
        Public Function GetColor(ByVal groupingValue As String) As String
    
            If mapping.ContainsKey(groupingValue) Then
                    Return mapping(groupingValue)
            End If
    
            Dim c As String = colorPalette(count Mod colorPalette.Length)
                count = count + 1
                mapping.Add(groupingValue, c)
                Return c
        End Function
    

    然后我们需要在设置系列颜色和EmptyPoint时调用此代码。

    1. 选择您的系列
    2. 在属性标签中粘贴以下内容(将 WhateverTheGroupIsForYourSeries 替换为系列组名称):=Code.GetColor(Fields!*WhateverTheGroupIsForYourSeries*.Value)
    3. 深入查看EmptyPoint系列属性
    4. 的颜色元素
    5. 粘贴与第2点相同的文字[例如=Code.GetColor(Fields!*WhateverTheGroupIsForYourSeries*.Value)]
    6. 瞧!你完成了! 我无法相信这有多么困难:D

答案 1 :(得分:1)

我只是遇到了显示标记而不是线条的问题。我最终通过将表达式包装在CInt()中来将其转换为整数来解决它。

答案 2 :(得分:0)

另一种处理此问题的方法是进行递归选择(如果你有非常大的数据集不这样做,它会杀死性能)。所以你可以制作你的数据集:

Error: Failed to fetch platform android
Probably this is either a connection problem, or platform spec is incorrect.
Check your connection and platform name/version/URL.
Error: EPERM: operation not permitted, utime '/home/dell/.cordova/lib/npm_cache/cordova-android/5.2.2/package/.npmignore'

现在您可以将您的类别组设为rn(它应按rn分组并按rn排序),但为其标签选择日期。这仍将在x轴上显示日期,但由于您按数字分组,因此数据仍将是连续的,并且所有行都将连接。你的传奇也仍然匹配。

由于我们正在使用行号和显示日期进行绘图,所以我仍然没有深入研究这有多少会改变数据点,但是如果你主要关注线条中的趋势可视化并且不关心它们在哪里在一个给定的时间点相对于彼此,它将为你服务。否则我会按原样离开图表,只读取绘图点,这些点仍然是有效数据。