我正在绘制一个ScatterPlot,显示使用OxyPlot的最后一个月的数据 . 但X轴标签重叠 . X轴是日期时间轴 .
这是我用来获取X轴的功能 .
DateTimeAxis GetXAxis ()
{
var axis = new DateTimeAxis {
Position = AxisPosition.Bottom,
MinorIntervalType = DateTimeIntervalType.Days,
MinorTickSize = 0,
MajorTickSize = 0,
MajorGridlineStyle = LineStyle.None,
MinorGridlineStyle = LineStyle.None,
FontSize = 8,
TextColor = OxyColor.Parse (ColorHex.DarkGray),
Maximum = DateTimeAxis.ToDouble (DateTime.Now),
MajorStep = 1,
};
if (type == Constants.QUESTION_ANSWER_TYPE_WEEK) {
axis.Minimum = DateTimeAxis.ToDouble (DateTime.Now.AddDays (-7));
axis.StringFormat = "ddd";
} else if (type == Constants.QUESTION_ANSWER_TYPE_MONTH) {
axis.Minimum = DateTimeAxis.ToDouble (DateTime.Now.AddDays (-30));
axis.StringFormat = "MMM dd";
} else {
axis.StringFormat = "MMM dd";
}
return axis;
}
如何防止它们重叠?我需要手动跳过标签吗?或者在oxyplot中有自动执行此操作的设置吗?此外,是否可以在放大和缩小时自动调整标签?
1 回答
这就是我解决它的方式 .
我使用了轴的属性'MajorStep' .
并在放大和缩小时调整标签: