Join SSRS折线图未连接数据点
我到处寻找,似乎找不到一个答案,似乎是一个相当简单的问题(我想) 我有一个折线图,其中在一个系列的几个点上有数据,但只有一组点连接起来 有人知道这是为什么吗?这和我的数据有关吗?如果是的话,我很难在数据中找到任何可以解释这种行为的关系 我的意思是: 正如你所看到的,红色钻石应该是相互连接的——蓝色正方形和深蓝色三角形也是如此。有什么想法吗Join SSRS折线图未连接数据点,join,reporting-services,graph,charts,line,Join,Reporting Services,Graph,Charts,Line,我到处寻找,似乎找不到一个答案,似乎是一个相当简单的问题(我想) 我有一个折线图,其中在一个系列的几个点上有数据,但只有一组点连接起来 有人知道这是为什么吗?这和我的数据有关吗?如果是的话,我很难在数据中找到任何可以解释这种行为的关系 我的意思是: 正如你所看到的,红色钻石应该是相互连接的——蓝色正方形和深蓝色三角形也是如此。有什么想法吗 如果我的颜色不对,我会道歉-我是色盲。好的,所以我解决了这个问题 首先,为了让行连接起来,需要为序列设置EmptyPoint颜色 在图表中选择您的系列 在“
如果我的颜色不对,我会道歉-我是色盲。好的,所以我解决了这个问题 首先,为了让行连接起来,需要为序列设置
EmptyPoint
颜色
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
的颜色时调用此代码
=code.GetColor(字段!*WhateVertheGroups for YourSeries*.Value)
EmptyPoint
Series属性的颜色元素=code.GetColor(字段!*WhateVertheGroups for YourSeries*.Value)
]我不敢相信这是多么不必要的困难:我只是有一个问题,它显示的是标记,而不是线条。我最终解决了这个问题,将表达式包装在一个CInt()中,将其转换为整数。另一种处理方法是执行递归选择(如果有非常大的数据集,则不执行此操作,会降低性能)。因此,您可以制作数据集:
SELECT *, ROW_NUMBER() over(partition by Store order by Date desc) as rn
FROM StorePerformance
现在您可以将您的类别组设置为rn(它应该按rn分组并按rn排序),但要为其标签选择日期。这仍将在x轴上显示日期,但由于您是按rn分组的,因此数据仍将是连续的,所有行都将连接起来。同样,你的传奇仍然会匹配
我还没有深入研究数据点的移动程度,因为我们是用行号和显示日期绘制的,但是如果您主要关注线条中的可视化趋势,而不是关注它们在给定时间点相对于彼此的位置,那么这将很好地为您服务。否则,我会让图表保持原样,只读取仍然有效的绘图点。
只要把你的领域!(YourSeriesGroup)。系列组中的值大于
领域!(YourCategoryGroup)。值在类别组中,系列组应同时位于系列组和类别组中(应位于初始类别组的上方)
然后在“水平轴”上单击鼠标右键,然后选择“水平轴属性”。将“轴类型”设置为“标量”,然后单击“确定”
在我尝试第2步和第4步之前,一切都很顺利。问题在于访问GetColor函数。似乎定义GetColor函数的报表属性中编写的代码在color元素中不可访问。你知道怎么解决这个问题吗。我使用的是RDLC,而不是reporting services上的RDL。找出了我的错误!我提供的系列名称有输入错误。你的解决方案奏效了。谢谢我现在看到的唯一问题是图例的颜色弄乱了。同一颜色的外观不止一个。我用CountRows()表示我的Y值,这给了我空点的错觉,但实际点的值为零。为了解决这个问题,我将Y值改为=IIF(CountRows()>0,CountRows(),Nothing)。您的答案非常有用,为我指明了正确的方向。然而,我决定用我的数据交付线条颜色,并将字段应用于线条颜色以及空点颜色,因此我有完全的控制权,可以避免代码方法,让我的图例与线条颜色对齐。你能用一个代码示例进一步解释这一点吗?我有兴趣尝试这个解决方案。这个解决方案对我非常有效。选择图表值字段,单击箭头并选择表达式,然后使用CINT([您的表达式])包装其中的内容。谢谢你,史蒂夫卡夫