unity坐标轴Y_c#

以下代码是基于0.3.0.0版本的DLL,最新的DLL某些方法已不适用。

常用设置

1、隐藏右上角的图例

plotter.LegendVisible = false;

2、隐藏坐标的网格线

以下两种写法都可以,个人使用的版本是0.3.0.0

plotter.AxisGrid.Visibility = Visibility.Hidden;
       plotter.AxisGrid.Remove();

3、取消右键菜单

unity坐标轴Y_图表_02

plotter.Children.Remove(plotter.DefaultContextMenu);

4、禁止鼠标点击坐标时可拖动的功能

plotter.Children.Remove(plotter.MouseNavigation);

5、隐藏坐标轴

其中vAxis是XAML中坐标轴的名称

vAxis.Visibility = Visibility.Hidden;
//这是只是隐藏了,之前轴宽度多少就会留白多少
//想要不留白直接 vAxis.Width = 0 或者 hAxis.Height= 0;

6、隐藏坐标轴短刻度线

其中vAxis是XAML中坐标轴的名称

unity坐标轴Y_d3_03


有的Dll版本是用下面这个属性

vAxis.AxisControl.DrawTicks = false;

有的是用:

vAxis.ShowMinorTicks = false;
或者
vAxis.AxisControl.ShowMinorTicks = false;

7、保存屏幕截图

需要:using Microsoft.Win32;

SaveFileDialog dlg = new SaveFileDialog(); //文件选择弹出框
            dlg.Filter = "PNG (*.png)|*.png|JPEG (*.jpg)|*.jpg|BMP (*.bmp)|*.bmp|GIF (*.gif)|*.gif";
            dlg.FilterIndex = 1;
            dlg.AddExtension = true;
            if (dlg.ShowDialog().GetValueOrDefault(false))
            {
                string filePath = dlg.FileName;
                plotter.SaveScreenshot(filePath);//filePath:取得保存的目录
            }

8、坐标显示的刻度样式

unity坐标轴Y_c#_04


info.Tick 代表刻度值

// 这将使最X轴以百分比形式显示刻度。
            hAxis.LabelProvider = new ToStringLabelProvider();
            //标签字符串格式
            hAxis.LabelProvider.LabelStringFormat = "{0}%";
            //设置自定义格式设置工具
            hAxis.LabelProvider.SetCustomFormatter(info => (info.Tick * 100).ToString());

9、十字光标的相关的属性

<!-- 
    十字光标                   
        AutoHide: 鼠标离开绘图仪时是否自动隐藏光标行。[默认:True]
        Position: 光标的位置(在AutoHide=False的时候有效)
        FollowMouse: 是否跟随鼠标光标位置。[默认:True]
        CustomXFormat: X标签的自定义格式字符串。
        CustomYFormat: Y标签的自定义格式字符串。
        XTextMapping: x label-函数的文本映射,该函数方法根据数据中鼠标的x坐标生成文本。
        YTextMapping: y label-函数的文本映射,该函数方法根据数据中鼠标的x坐标生成文本。
        ShowHorizontalLine: 是否显示水平线
        ShowVerticalLine: 是否显示竖线
        LineStroke: 光标线的颜色
        LineStrokeThickness: 光标线的粗细
        LineStrokeDashArray:创建虚线
-->
<d3:CursorCoordinateGraph  AutoHide="False"  CustomXFormat="a" LineStroke="Aqua"/>

10、在坐标上显示十字光标线对应的刻度线

unity坐标轴Y_图表_05

如图中红线

<!--
    两条轴上的线,显示当前光标位置
        ShowHorizontalLine:是否显示在X轴上光标的位置
        ShowVerticalLine:是否显示在Y轴上光标的位置
-->
<d3:AxisCursorGraph ShowHorizontalLine="True" />

11、显示方形区域

unity坐标轴Y_c#_06

<d3:RectangleHighlight Bounds="0.1, 0.6, 0.15, 0.2" StrokeThickness="2" Fill="MidnightBlue"/>:

12、线段

unity坐标轴Y_图表_07

<d3:Segment StartPoint="0.3, 0.45" EndPoint="0.5, 0.65" Stroke="Green" StrokeThickness="2" StrokeDashArray="2"/>:

13、水平条范围条

unity坐标轴Y_unity坐标轴Y_08

<d3:HorizontalRange Value1="0.1"
                          Value2="0.15"
                          Fill="Green" />

同理,垂直范围条

<d3:VerticalRange Value1="0.1" Value2="0.12" Fill="Fuchsia"/>

14、其它

<d3:NumericAxis Name="doubleSelector" />