
# IPlotAxis interface

*No description yet.*

```csharp
public interface IPlotAxis : IAxis
```

**Namespace:** SCH · **Assembly:** Altium.SDK.Interfaces

**Inherits:** [IPrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPrimitive.md) → [IAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IAxis.md)

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [AutoUnits](#autounits) | `bool` | get; set |  |
| [AutoYDiv](#autoydiv) | `bool` | get; set |  |
| [AutoYMax](#autoymax) | `bool` | get; set |  |
| [AutoYMin](#autoymin) | `bool` | get; set |  |
| [AxisLabel](#axislabel) | `string` | get; set |  |
| [Units](#units) | `string` | get; set |  |
| [WaveCount](#wavecount) | `int` | get |  |
| [WaveInterface](#waveinterface) | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | get |  |
| [YDivisions](#ydivisions) | `int` | get; set |  |
| [YDivSize](#ydivsize) | `double` | get; set |  |
| [YOffset](#yoffset) | `double` | get; set |  |

### AutoUnits

*No description yet.*

```csharp
bool GetProperty_AutoUnits();
void SetProperty_AutoUnits(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### AutoYDiv

*No description yet.*

```csharp
bool GetProperty_AutoYDiv();
void SetProperty_AutoYDiv(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### AutoYMax

*No description yet.*

```csharp
bool GetProperty_AutoYMax();
void SetProperty_AutoYMax(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### AutoYMin

*No description yet.*

```csharp
bool GetProperty_AutoYMin();
void SetProperty_AutoYMin(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### AxisLabel

*No description yet.*

```csharp
string GetProperty_AxisLabel();
void SetProperty_AxisLabel(string argValue);
```

**Type:** `string` · **Access:** read/write

### Units

*No description yet.*

```csharp
string GetProperty_Units();
void SetProperty_Units(string argValue);
```

**Type:** `string` · **Access:** read/write

### WaveCount

*No description yet.*

```csharp
int GetProperty_WaveCount();
```

**Type:** `int` · **Access:** read-only

### WaveInterface

*No description yet.*

```csharp
IPlottedWave GetProperty_WaveInterface(int argIndex);
```

**Type:** [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) · **Access:** read-only · **Index:** `argIndex` (`int`)

The accessors are extension methods of `IPlotAxisHelper` (`using SCH;`).

### YDivisions

*No description yet.*

```csharp
int GetProperty_YDivisions();
void SetProperty_YDivisions(int argValue);
```

**Type:** `int` · **Access:** read/write

### YDivSize

*No description yet.*

```csharp
double GetProperty_YDivSize();
void SetProperty_YDivSize(double argValue);
```

**Type:** `double` · **Access:** read/write

### YOffset

*No description yet.*

```csharp
double GetProperty_YOffset();
void SetProperty_YOffset(double argValue);
```

**Type:** `double` · **Access:** read/write

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddWave](#addwave) | `int` |  |
| [AddWave_1](#addwave_1) | `int` |  |
| [GetLabelString](#getlabelstring) | `string` |  |
| [GetScaleDetails](#getscaledetails) | `void` |  |
| [GetUnitsString](#getunitsstring) | `string` |  |
| [GetYLimits](#getylimits) | `void` |  |
| [IndexOfWave](#indexofwave) | `int` |  |
| [InitAxis](#initaxis) | `void` |  |
| [InsertWave](#insertwave) | `void` |  |
| [InsertWave_1](#insertwave_1) | `void` |  |
| [ManualScaleChange](#manualscalechange) | `void` |  |
| [RemoveWave](#removewave) | `void` |  |
| [RemoveWaveIfOwned](#removewaveifowned) | `bool` |  |
| [Replicate](#replicate) | [IPlotAxis](#) |  |
| [RescaleAxis](#rescaleaxis) | `void` |  |
| [RescaleToXLimits](#rescaletoxlimits) | `void` |  |
| [ScaleChange](#scalechange) | `void` |  |

### AddWave

*No description yet.*

```csharp
int AddWave(IPlottedWave argWave);
int AddWave(object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** `int`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### AddWave_1

*No description yet.*

```csharp
int AddWave_1(IPlottedWave argWave, bool argRescaleFlag);
int AddWave_1(object argWave, bool argRescaleFlag);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |
| `argRescaleFlag` | `bool` | value |

**Returns:** `int`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### GetLabelString

*No description yet.*

```csharp
string GetLabelString(bool argShowWavesFlag, IPlottedWave argWave);
string GetLabelString(bool argShowWavesFlag, object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argShowWavesFlag` | `bool` | value |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** `string`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### GetScaleDetails

*No description yet.*

```csharp
void GetScaleDetails(ref double argMin, ref double argMax);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMin` | `double` | ref |
| `argMax` | `double` | ref |

**Returns:** nothing (`void`)

### GetUnitsString

*No description yet.*

```csharp
string GetUnitsString(IPlottedWave argWave);
string GetUnitsString(object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** `string`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### GetYLimits

*No description yet.*

```csharp
void GetYLimits(ref double argMin, ref double argMax, ref int argDiv);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMin` | `double` | ref |
| `argMax` | `double` | ref |
| `argDiv` | `int` | ref |

**Returns:** nothing (`void`)

### IndexOfWave

*No description yet.*

```csharp
int IndexOfWave(IPlottedWave argWave);
int IndexOfWave(object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** `int`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### InitAxis

*No description yet.*

```csharp
void InitAxis();
```

**Returns:** nothing (`void`)

### InsertWave

*No description yet.*

```csharp
void InsertWave(int argWaveIndex, IPlottedWave argWave);
void InsertWave(int argWaveIndex, object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWaveIndex` | `int` | value |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### InsertWave_1

*No description yet.*

```csharp
void InsertWave_1(int argWaveIndex, IPlottedWave argWave, bool argRescaleFlag);
void InsertWave_1(int argWaveIndex, object argWave, bool argRescaleFlag);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWaveIndex` | `int` | value |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |
| `argRescaleFlag` | `bool` | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### ManualScaleChange

*No description yet.*

```csharp
void ManualScaleChange(double argMin, double argMax, double argDivSize, bool argnAutoMinFlag, bool argnAutoMaxFlag, bool argnAutoDivFlag);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMin` | `double` | value |
| `argMax` | `double` | value |
| `argDivSize` | `double` | value |
| `argnAutoMinFlag` | `bool` | value |
| `argnAutoMaxFlag` | `bool` | value |
| `argnAutoDivFlag` | `bool` | value |

**Returns:** nothing (`void`)

### RemoveWave

*No description yet.*

```csharp
void RemoveWave(int argWaveIndex);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWaveIndex` | `int` | value |

**Returns:** nothing (`void`)

### RemoveWaveIfOwned

*No description yet.*

```csharp
bool RemoveWaveIfOwned(IPlottedWave argWave);
bool RemoveWaveIfOwned(object argWave);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argWave` | [IPlottedWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlottedWave.md) | value |

**Returns:** `bool`

The first overload is an extension method of `IPlotAxisHelper` (`using SCH;`) with typed parameters; the second is declared by the interface.

### Replicate

*No description yet.*

```csharp
IPlotAxis Replicate();
```

**Returns:** [IPlotAxis](#)

Extension method of `IPlotAxisHelper` (`using SCH;`).

### RescaleAxis

*No description yet.*

```csharp
void RescaleAxis();
```

**Returns:** nothing (`void`)

### RescaleToXLimits

*No description yet.*

```csharp
void RescaleToXLimits(double argMin, double argMax);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMin` | `double` | value |
| `argMax` | `double` | value |

**Returns:** nothing (`void`)

### ScaleChange

*No description yet.*

```csharp
void ScaleChange(double argMin, double argMax, int argDiv);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMin` | `double` | value |
| `argMax` | `double` | value |
| `argDiv` | `int` | value |

**Returns:** nothing (`void`)

## Inherited members

- From [IAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IAxis.md): [ParentChartInterface](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IAxis.md#parentchartinterface), [ParentPlot](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IAxis.md#parentplot)
- From [IPrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPrimitive.md): [BoundingRect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPrimitive.md#boundingrect), [ViewablePrimitiveId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPrimitive.md#viewableprimitiveid)

## Returned by

[IPlot.AxisInterface](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#axisinterface), [IPlot.GetAxisForWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#getaxisforwave), [IPlot.NewAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#newaxis), [IPlot.SelectedAxisInterface](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#selectedaxisinterface)

## Accepted by

[IChart.GetPlotByAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IChart.md#getplotbyaxis), [IChart.GetPlotIndexByAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IChart.md#getplotindexbyaxis), [IChart.MoveWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IChart.md#movewave), [IPlot.AddAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#addaxis), [IPlot.GetYPosition](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#getyposition), [IPlot.IndexOfAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md#indexofaxis)
