gav*_*gav 2 silverlight gradient graph
我有一系列要点,我将在图表上变成一条线.我想要的是给图表下的区域一个渐变填充.它看起来有点像这样的彭博图;
我的问题实际上有三个部分;
我最大的问题是决定要使用的数据结构,我可以使用许多多边形状(每个线/数据系列一个),然后告诉画笔绘制;
然后我会用白色绘制形状的边界.
谢谢,
GAV
使用免费版本的Visiblox Silverlight Charts可以实现渐变效果.请参阅示例应用程序'Hindsight',了解Visiblox图表如何应用于此上下文的应用程序.
我附上了XAML的粗略代码片段,介绍了如何实现这种效果:
<UserControl x:Class="SilverlightApplication1.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:v="clr-namespace:Visiblox.Charts;assembly=Visiblox.Charts">
<UserControl.Resources>
<LinearGradientBrush x:Key="GradientBrush" StartPoint="1.0, 0.0" EndPoint="1.0, 1.0">
<GradientStop Color="AliceBlue" Offset="0.3" />
<GradientStop Color="DarkBlue" Offset="0.7" />
</LinearGradientBrush>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White">
<v:Chart x:Name="Chart">
<v:Chart.Series>
<v:LineSeries x:Name="Series" ShowArea="True" AreaFill="{StaticResource GradientBrush}"/>
</v:Chart.Series>
</v:Chart>
</Grid>
Run Code Online (Sandbox Code Playgroud)
就个人而言,我会采取Hindsight所做的动作,当绘图区域有多个系列时,删除线下的区域.我认为在这一点上,渐变会妨碍数据,正如您在上面提到的,对此做一些事情会产生计算成本.这也可能导致对数据的误解,因此要小心谨慎.
在将数据导入图表方面,您可以使用Visiblox BindableDataSeries将业务对象直接绑定到图表上.:)
披露:我之前曾在Visiblox Charts担任开发人员.
希望这可以帮助!