OxyPlot.Axes.DateTimeAxis.ps1

Set-StrictMode -Version 3

<#
.SYNOPSIS
 
Represents an axis presenting System.DateTime values.
 
The actual numeric values on the axis are days since 1900/01/01.
Use the static ToDouble and ToDateTime to convert numeric values to and from DateTimes.
The StringFormat value can be used to force formatting of the axis values
"yyyy-MM-dd" shows date
"w" or "ww" shows week number
"h:mm" shows hours and minutes
 
.PARAMETER AbsoluteMaximum
Sets the absolute maximum. This is only used for the UI control. It will not be possible to zoom/pan beyond this limit. The default value is double.MaxValue.
 
.PARAMETER AbsoluteMinimum
Sets the absolute minimum. This is only used for the UI control. It will not be possible to zoom/pan beyond this limit. The default value is double.MinValue.
 
.PARAMETER ActualMajorStep
Sets the actual major step.
 
.PARAMETER ActualMaximum
Sets the actual maximum value of the axis.
 
If OxyPlot.Axes.Axis.ViewMaximum is not NaN, this value will be defined by OxyPlot.Axes.Axis.ViewMaximum.
Otherwise, if OxyPlot.Axes.Axis.Maximum is not NaN, this value will be defined by OxyPlot.Axes.Axis.Maximum.
Otherwise, this value will be defined by the maximum (+padding) of the data.
 
.PARAMETER ActualMinimum
Sets the actual minimum value of the axis.
 
If OxyPlot.Axes.Axis.ViewMinimum is not NaN, this value will be defined by OxyPlot.Axes.Axis.ViewMinimum.
Otherwise, if OxyPlot.Axes.Axis.Minimum is not NaN, this value will be defined by OxyPlot.Axes.Axis.Minimum.
Otherwise this value will be defined by the minimum (+padding) of the data.
 
.PARAMETER ActualMinorStep
Sets the actual minor step.
 
.PARAMETER ActualStringFormat
Sets the actual string format being used.
 
.PARAMETER ActualTitle
 
Gets the actual title of the axis.
 
If the OxyPlot.Axes.Axis.Unit property is set, the OxyPlot.Axes.Axis.TitleFormatString property is used to format the actual title.
 
.PARAMETER Angle
Sets the orientation angle (degrees) for the axis labels. The default value is 0.
 
.PARAMETER AxisTickToLabelDistance
Sets the distance from the end of the tick lines to the labels. The default value is 4.
 
.PARAMETER AxisTitleDistance
Sets the minimum distance from the axis labels to the axis title. The default value is 4.
 
.PARAMETER AxisDistance
Sets the distance between the plot area and the axis. The default value is 0.
 
.PARAMETER AxislineColor
Sets the color of the axis line. The default value is OxyPlot.OxyColors.Black.
 
.PARAMETER AxislineStyle
Sets the line style of the axis line. The default value is OxyPlot.LineStyle.None.
 
.PARAMETER AxislineThickness
Sets the thickness of the axis line. The default value is 1.
 
.PARAMETER ClipTitle
Sets a value indicating whether to clip the axis title. The default value is true.
 
.PARAMETER CropGridlines
Sets a value indicating whether to crop gridlines with perpendicular axes Start/EndPositions. The default value is false.
 
.PARAMETER DataMaximum
Sets the maximum value of the data displayed on this axis.
 
.PARAMETER DataMinimum
Sets the minimum value of the data displayed on this axis.
 
.PARAMETER EndPosition
Sets the end position of the axis on the plot area. The default value is 1.
 
The position is defined by a fraction in the range from 0 to 1, where 0 is at the bottom/left
and 1 is at the top/right.
 
.PARAMETER ExtraGridlineColor
Sets the color of the extra gridlines. The default value is OxyPlot.OxyColors.Black.
 
.PARAMETER ExtraGridlineStyle
Sets the line style of the extra gridlines. The default value is OxyPlot.LineStyle.Solid.
 
.PARAMETER ExtraGridlineThickness
Sets the thickness of the extra gridlines. The default value is 1.
 
.PARAMETER ExtraGridlines
Sets the values for the extra gridlines. The default value is null.
 
.PARAMETER FilterFunction
Sets the filter function. The default value is null.
 
.PARAMETER FilterMaxValue
Sets the maximum value that can be shown using this axis. Values greater or equal to this value will not be shown. The default value is double.MaxValue.
 
.PARAMETER FilterMinValue
Sets the minimum value that can be shown using this axis. Values smaller or equal to this value will not be shown. The default value is double.MinValue.
 
.PARAMETER IntervalLength
Sets the maximum length (screen space) of the intervals. The available length of the axis will be divided by this length to get the approximate number of major intervals on the axis. The default value is 60.
 
.PARAMETER IsAxisVisible
Sets a value indicating whether this axis is visible. The default value is true.
 
.PARAMETER IsPanEnabled
Sets a value indicating whether panning is enabled. The default value is true.
 
.PARAMETER IsReversed
 
Gets a value indicating whether this axis is reversed. It is reversed if OxyPlot.Axes.Axis.StartPosition > OxyPlot.Axes.Axis.EndPosition.
 
.PARAMETER IsZoomEnabled
Sets a value indicating whether zooming is enabled. The default value is true.
 
.PARAMETER Key
Sets the key of the axis. This can be used to specify an axis if you have defined multiple axes in a plot. The default value is null.
 
.PARAMETER LabelFormatter
Sets the formatting function for the labels. The default value is null.
 
This function can be used instead of overriding the OxyPlot.Axes.Axis.FormatValue(System.Double) method.
 
.PARAMETER Layer
Sets the layer of the axis. The default value is OxyPlot.Axes.AxisLayer.BelowSeries.
 
.PARAMETER MajorGridlineColor
Sets the color of the major gridlines. The default value is #40000000.
 
.PARAMETER MajorGridlineStyle
Sets the line style of the major gridlines. The default value is OxyPlot.LineStyle.None.
 
.PARAMETER MajorGridlineThickness
Sets the thickness of the major gridlines. The default value is 1.
 
.PARAMETER MajorStep
Sets the interval between major ticks. The default value is double.NaN.
 
.PARAMETER MajorTickSize
Sets the size of the major ticks. The default value is 7.
 
.PARAMETER Maximum
Sets the maximum value of the axis. The default value is double.NaN.
 
.PARAMETER MaximumPadding
Sets the 'padding' fraction of the maximum value. The default value is 0.01.
 
A value of 0.01 gives 1% more space on the maximum end of the axis. This property is not used if the OxyPlot.Axes.Axis.Maximum property is set.
 
.PARAMETER MaximumRange
Sets the maximum range of the axis. Setting this property ensures that ActualMaximum-ActualMinimum < MaximumRange. The default value is double.PositiveInfinity.
 
.PARAMETER Minimum
Sets the minimum value of the axis. The default value is double.NaN.
 
.PARAMETER MinimumMajorStep
Sets the minimum value for the interval between major ticks. The default value is 0.
 
.PARAMETER MinimumMinorStep
Sets the minimum value for the interval between minor ticks. The default value is 0.
 
.PARAMETER MinimumPadding
Sets the 'padding' fraction of the minimum value. The default value is 0.01.
 
A value of 0.01 gives 1% more space on the minimum end of the axis. This property is not used if the OxyPlot.Axes.Axis.Minimum property is set.
 
.PARAMETER MinimumRange
Sets the minimum range of the axis. Setting this property ensures that ActualMaximum-ActualMinimum > MinimumRange. The default value is 0.
 
.PARAMETER MinorGridlineColor
Sets the color of the minor gridlines. The default value is #20000000.
 
.PARAMETER MinorGridlineStyle
Sets the line style of the minor gridlines. The default value is OxyPlot.LineStyle.None.
 
.PARAMETER MinorGridlineThickness
Sets the thickness of the minor gridlines. The default value is 1.
 
.PARAMETER MinorStep
Sets the interval between minor ticks. The default value is double.NaN.
 
.PARAMETER MinorTicklineColor
Sets the color of the minor ticks. The default value is OxyPlot.OxyColors.Automatic.
 
If the value is OxyPlot.OxyColors.Automatic, the value of
OxyPlot.Axes.Axis.TicklineColor will be used.
 
.PARAMETER MinorTickSize
Sets the size of the minor ticks. The default value is 4.
 
.PARAMETER Offset
 
Gets the offset. This is used to transform between data and screen coordinates.
 
.PARAMETER Position
Sets the position of the axis. The default value is OxyPlot.Axes.AxisPosition.Left.
 
.PARAMETER PositionAtZeroCrossing
Sets a value indicating whether the axis should be positioned at the zero-crossing of the related axis. The default value is false.
 
.PARAMETER PositionTier
Sets the position tier which defines in which tier the axis is displayed. The default value is 0.
 
The bigger the value the further afar is the axis from the graph.
 
.PARAMETER Scale
 
Gets the scaling factor of the axis. This is used to transform between data and screen coordinates.
 
.PARAMETER ScreenMax
Sets the screen coordinate of the maximum end of the axis.
 
.PARAMETER ScreenMin
Sets the screen coordinate of the minimum end of the axis.
 
.PARAMETER StartPosition
Sets the start position of the axis on the plot area. The default value is 0.
 
The position is defined by a fraction in the range from 0 to 1, where 0 is at the bottom/left
and 1 is at the top/right.
 
.PARAMETER StringFormat
Sets the string format used for formatting the axis values. The default value is null.
 
.PARAMETER TickStyle
Sets the tick style for major and minor ticks. The default value is OxyPlot.Axes.TickStyle.Outside.
 
.PARAMETER TicklineColor
Sets the color of the major and minor ticks. The default value is OxyPlot.OxyColors.Black.
 
.PARAMETER Title
Sets the title of the axis. The default value is null.
 
.PARAMETER TitleClippingLength
Sets the length of the title clipping rectangle (fraction of the available length of the axis). The default value is 0.9.
 
.PARAMETER TitleColor
Sets the color of the title. The default value is OxyPlot.OxyColors.Automatic.
 
If the value is null, the OxyPlot.PlotModel.TextColor will be used.
 
.PARAMETER TitleFont
Sets the title font. The default value is null.
 
.PARAMETER TitleFontSize
Sets the size of the title font. The default value is double.NaN.
 
.PARAMETER TitleFontWeight
Sets the weight of the title font. The default value is OxyPlot.FontWeights.Normal.
 
.PARAMETER TitleFormatString
Sets the format string used for formatting the title and unit when OxyPlot.Axes.Axis.Unit is defined.
The default value is "{0} [{1}]", where {0} refers to the OxyPlot.Axes.Axis.Title and {1} refers to the OxyPlot.Axes.Axis.Unit.
 
If OxyPlot.Axes.Axis.Unit is null, the actual title is defined by OxyPlot.Axes.Axis.Title only.
 
.PARAMETER TitlePosition
Sets the position of the title. The default value is 0.5.
 
The position is defined by a fraction in the range 0 to 1.
 
.PARAMETER Unit
Sets the unit of the axis. The default value is null.
 
The OxyPlot.Axes.Axis.TitleFormatString is used to format the title including this unit.
 
.PARAMETER UseSuperExponentialFormat
Sets a value indicating whether to use superscript exponential format. The default value is false.
 
This format will convert 1.5E+03 to 1.5�E10^{3} and render the superscript properly.
If OxyPlot.Axes.Axis.StringFormat is null, 1.0E+03 will be converted to 10^{3}, otherwise it will use the format string for the mantissa.
 
.PARAMETER DesiredSize
Sets the "desired" size by the renderer such that the axis text & ticks will not be clipped. This
size is distinct from the margin settings or the size which is actually rendered, as in: ActualWidth / ActualSize.
Actual rendered size may be smaller or larger than the desired size if the margins are set manually.
 
.PARAMETER PositionTierMaxShift
Sets the position tier max shift.
 
.PARAMETER PositionTierMinShift
Sets the position tier min shift.
 
.PARAMETER PositionTierSize
Sets the size of the position tier.
 
.PARAMETER ActualTitleColor
 
Gets the actual color of the title.
 
.PARAMETER ActualTitleFont
 
Gets the actual title font.
 
.PARAMETER ActualTitleFontSize
 
Gets the actual size of the title font.
 
.PARAMETER ActualTitleFontWeight
 
Gets the actual title font weight.
 
.PARAMETER ViewMaximum
Sets the current view's maximum. This value is used when the user zooms or pans.
 
.PARAMETER ViewMinimum
Sets the current view's minimum. This value is used when the user zooms or pans.
 
.PARAMETER CalendarWeekRule
Sets CalendarWeekRule.
 
.PARAMETER FirstDayOfWeek
Sets FirstDayOfWeek.
 
.PARAMETER IntervalType
Sets IntervalType.
 
.PARAMETER MinorIntervalType
Sets MinorIntervalType.
 
.PARAMETER TimeZone
Sets the time zone (used when formatting date/time values).
 
No date/time conversion will be performed if this property is null.
 
.PARAMETER FormatAsFractions
Sets a value indicating whether to format numbers as fractions.
 
.PARAMETER FractionUnit
Sets the fraction unit. Remember to set FormatAsFractions to true.
 
.PARAMETER FractionUnitSymbol
Sets the fraction unit symbol. Use FractionUnit = Math.PI and FractionUnitSymbol = "��" if you want the axis to show "��/2,��,3��/2,2��" etc. Use FractionUnit = 1 and FractionUnitSymbol = "L" if you want the axis to show "0,L/2,L" etc. Remember to set FormatAsFractions to true.
 
.PARAMETER Parent
 
Gets the parent model of the element.
 
.PARAMETER Font
Sets the font. The default is null (use OxyPlot.PlotModel.DefaultFont.
 
If the value is null, the DefaultFont of the parent PlotModel will be used.
 
.PARAMETER FontSize
Sets the size of the font. The default is double.NaN (use OxyPlot.PlotModel.DefaultFontSize).
 
If the value is NaN, the DefaultFontSize of the parent PlotModel will be used.
 
.PARAMETER FontWeight
Sets the font weight. The default is FontWeights.Normal.
 
.PARAMETER PlotModel
 
Gets the parent OxyPlot.PlotElement.PlotModel.
 
.PARAMETER Tag
Sets an arbitrary object value that can be used to store custom information about this plot element. The default is null.
 
This property is analogous to Tag properties in other Microsoft programming models. Tag is intended to provide a pre-existing property location where you can store some basic custom information about any PlotElement without requiring you to subclass an element.
 
.PARAMETER TextColor
Sets the color of the text. The default is OxyColors.Automatic (use OxyPlot.PlotModel.TextColor).
 
If the value is OxyColors.Automatic, the TextColor of the parent PlotModel will be used.
 
.PARAMETER ToolTip
Sets the tool tip. The default is null.
 
.PARAMETER ActualFont
 
Gets the actual font.
 
.PARAMETER ActualFontSize
 
Gets the actual size of the font.
 
.PARAMETER ActualFontWeight
 
Gets the actual font weight.
 
.PARAMETER ActualTextColor
 
Gets the actual color of the text.
 
.PARAMETER ActualCulture
 
Gets the actual culture.
 
The culture is defined in the parent PlotModel.
 
.PARAMETER Selectable
Sets a value indicating whether this element can be selected. The default is true.
 
.PARAMETER SelectionMode
Sets the selection mode of items in this element. The default is SelectionMode.All.
 
This is only used by the select/unselect functionality, not by the rendering.
 
.PARAMETER ActualSelectedColor
 
Gets the actual selection color.
 
 
 
.DESCRIPTION
This cmdlet creates an OxyPlot.Axes.DateTimeAxis object.
 
#>

function New-OxyDateTimeAxis {
 [cmdletbinding()]
 [OutputType([OxyPlot.Axes.DateTimeAxis])]
  param(
    [System.Globalization.CalendarWeekRule]$CalendarWeekRule,
    [System.DayOfWeek]$FirstDayOfWeek,
    [OxyPlot.Axes.DateTimeIntervalType]$IntervalType,
    [OxyPlot.Axes.DateTimeIntervalType]$MinorIntervalType,
    [System.TimeZoneInfo]$TimeZone,
    [System.Boolean]$FormatAsFractions,
    [object]$FractionUnit,
    [System.String]$FractionUnitSymbol,
    [object]$AbsoluteMaximum,
    [object]$AbsoluteMinimum,
    [object]$ActualMajorStep,
    [object]$ActualMaximum,
    [object]$ActualMinimum,
    [object]$ActualMinorStep,
    [System.String]$ActualStringFormat,
    [object]$Angle,
    [object]$AxisTickToLabelDistance,
    [object]$AxisTitleDistance,
    [object]$AxisDistance,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$AxislineColor,
    [OxyPlot.LineStyle]$AxislineStyle,
    [object]$AxislineThickness,
    [System.Boolean]$ClipTitle,
    [System.Boolean]$CropGridlines,
    [object]$DataMaximum,
    [object]$DataMinimum,
    [object]$EndPosition,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$ExtraGridlineColor,
    [OxyPlot.LineStyle]$ExtraGridlineStyle,
    [object]$ExtraGridlineThickness,
    [System.Double[]]$ExtraGridlines,
    [System.Func`2[[System.Double, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]]$FilterFunction,
    [object]$FilterMaxValue,
    [object]$FilterMinValue,
    [object]$IntervalLength,
    [System.Boolean]$IsAxisVisible,
    [System.Boolean]$IsPanEnabled,
    [System.Boolean]$IsZoomEnabled,
    [System.String]$Key,
    [System.Func`2[[System.Double, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]]$LabelFormatter,
    [OxyPlot.Axes.AxisLayer]$Layer,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$MajorGridlineColor,
    [OxyPlot.LineStyle]$MajorGridlineStyle,
    [object]$MajorGridlineThickness,
    [object]$MajorStep,
    [object]$MajorTickSize,
    [object]$Maximum,
    [object]$MaximumPadding,
    [object]$MaximumRange,
    [object]$Minimum,
    [object]$MinimumMajorStep,
    [object]$MinimumMinorStep,
    [object]$MinimumPadding,
    [object]$MinimumRange,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$MinorGridlineColor,
    [OxyPlot.LineStyle]$MinorGridlineStyle,
    [object]$MinorGridlineThickness,
    [object]$MinorStep,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$MinorTicklineColor,
    [object]$MinorTickSize,
    [OxyPlot.Axes.AxisPosition]$Position,
    [System.Boolean]$PositionAtZeroCrossing,
    [System.Int32]$PositionTier,
    [OxyPlot.ScreenPoint]$ScreenMax,
    [OxyPlot.ScreenPoint]$ScreenMin,
    [object]$StartPosition,
    [System.String]$StringFormat,
    [OxyPlot.Axes.TickStyle]$TickStyle,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$TicklineColor,
    [System.String]$Title,
    [object]$TitleClippingLength,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$TitleColor,
    [System.String]$TitleFont,
    [object]$TitleFontSize,
    [object]$TitleFontWeight,
    [System.String]$TitleFormatString,
    [object]$TitlePosition,
    [System.String]$Unit,
    [System.Boolean]$UseSuperExponentialFormat,
    [OxyPlot.OxySize]$DesiredSize,
    [System.String]$Font,
    [object]$FontSize,
    [object]$FontWeight,
    [System.Object]$Tag,
    [ValidatePattern('AliceBlue|AntiqueWhite|Aqua|Aquamarine|Automatic|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|Goldenrod|Gray|Green|GreenYellow|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquamarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Undefined|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen|(#?[0-9a-f]{1,8})')][string]$TextColor,
    [System.String]$ToolTip,
    [System.Boolean]$Selectable,
    [OxyPlot.SelectionMode]$SelectionMode,
    [OxyPlot.Model]$Parent,

    [hashtable]$Options = @{},

    [string]$Style = "default",
    [OxyPlot.PlotModel]$AddTo
  )

  $a = New-Object OxyPlot.Axes.DateTimeAxis

  Apply-OxyStyle $a $Style $MyInvocation

  $props = $PROPERTY_HASH["OxyPlot.Axes.DateTimeAxis"]
  Assign-ParametersToProperties $props $PSBoundParameters $Options $a

  if ($AddTo -ne $null) {
    $AddTo.Axes.Add($a)
    $AddTo.InvalidatePlot($false)
  }
  else {
    $a
  }
}