使用visifire在条形图上的中心轴

时间:2016-01-19 17:12:42

标签: c# wpf bar-chart visifire

我目前正在使用visifire进行c#图表项目。

我想创建一个条形图,将百分比增加显示为绿色条形,并减少为红色条形。 Axis / 0点线应始终保持在相同位置。

问题是,轴当前在屏幕上移动,具体取决于显示的值。 (见下图)

axis stuck on the right side

我已经尝试将其设置为中心,并将axismaximum和axisminimum设置为固定值,但这并不起作用。

我想要的方式是这样的。 single color / only negative

或者

positive and negative values

那里是否有任何剩余的visifire裂缝,可以理解问题和帮助?

2 个答案:

答案 0 :(得分:1)

一种解决方法是从系列中找到最大值(绝对值,使用Math.Abs),然后将其计数器值添加到系列的开头。

例如,如果最大绝对值为-80%,则添加+ 80%。这样,轴可以居中。

您可以为第一个栏使用特殊颜色(透明?),或使用其他控件覆盖它,以便用户只能看到真实数据。

答案 1 :(得分:0)

使用数据绑定,这应该可以解决问题。 MinValue = -MaxValue

<vc:Chart.AxesY >
       <vc:Axis AxisMaximum="{Binding MinValue}" AxisMinimum="{Binding MaxValue}" Enabled="False" AxisType="Primary" >

       </vc:Axis>
 </vc:Chart.AxesY>

否则在没有数据绑定的情况下这是相同的

<vc:Chart.AxesY >
       <vc:Axis AxisMaximum="70" AxisMinimum="-70" Enabled="False" AxisType="Primary" >

       </vc:Axis>
 </vc:Chart.AxesY>