使用Xamarin Forms在C#中将y轴设置为英尺英寸

时间:2018-11-30 16:54:01

标签: c# xamarin xamarin.forms syncfusion

我正在为Xamarin Forms使用Syncfusion的SFChart控件,我正在尝试使用StackingColumnSeries以英尺英寸为单位绘制数据(此数据表示容器中不同流体类型的高度)。数据源以英寸为单位。示例代码如下:

<chart:SfChart.Series>
    <chart:StackingColumnSeries
        Width="0.5"
        ItemsSource="{Binding ContainerLevels}" 
        XBindingPath="Name" YBindingPath="Level1"
        EnableTooltip="True">
</chart:StackingColumnSeries>

此处TankLevels是一个可观察的集合,其中包含以英寸为单位的液位。 Level1是指以英寸为单位的第一种流体的液位。 Name是容器的名称。

如何处理Level1数据源(当前为十进制),以便y轴以英尺英寸为单位显示?

1 个答案:

答案 0 :(得分:1)

我们已经分析了您的查询,我们想让您知道,我们的数值轴将显示与该系列绑定的值,并且没有内置任何数值转换。因此,我们建议您将英寸转换为英尺,例如在下面的代码片段和绑定的脚值直接到ChartSeries。

private void ConvertInchesTofeet(ObservableCollection<Model> containerLevels)
{
   for(int i = 0; i< containerLevels.Count; i++)
   {
   ContainerLevels[i].Level1 = containerLevels[i].Level1 / 12;
   }
}

要显示以英寸为单位的值,可以使用工具提示。基于此我们准备了一个示例,可以从下面的链接下载该示例。

Sample

注意–我为Syncfusion工作。