У меня есть вопросы по форматированию меток осей элемента управления диаграммой MS ASP.NET.Прежде чем я углублюсь в свои вопросы, пожалуйста, взгляните на этот снимок экрана.
Как вы можете видеть на снимке экрана, метки осей плохо читаются и выглядят жирными,Теперь у меня следующие вопросы:
- Какие свойства диаграммы по умолчанию заставляют метки оси не выглядеть как обычные символы Arial 11px, то есть символы, выделенные жирным шрифтом и закрывающие символы?
- Как может отображаться осьэтикетки будут легче читать и очищать, то есть вес обычного шрифта и разделение между символами?
Ответственный код:
public Chart GetChart(ChartData chartDataData, IChartSettings settings)
{
var chart = new Chart
{
BackColor = Color.Transparent,
Height = settings.Height,
Palette = ChartColorPalette.None,
PaletteCustomColors = settings.PaletterCustomColors.ToArray(),
Width = settings.Width
};
if (settings.ShowLegend)
{
chart.Legends.Add("Legend").Alignment = StringAlignment.Center;
}
AddChartArea(chart);
foreach (var seriesData in chartDataData.Series)
{
AddSeries(chart, seriesData, settings.ChartType);
}
chart.AlignDataPointsByAxisLabel();
return chart;
}
private void AddChartArea(Chart chart)
{
var area = new ChartArea();
area.AxisX.LabelStyle.Angle = -45;
area.AxisX.MajorGrid.LineColor = Color.Transparent;
chart.ChartAreas.Add(area);
area.AxisX.LabelStyle.Font = area.AxisY.LabelStyle.Font = new Font("Arial", 11, GraphicsUnit.Pixel);
}
private void AddSeries(Chart chart, SeriesData data, SeriesChartType chartType)
{
var series = new Series
{
ChartType = chartType,
Name = data.Name,
ToolTip = data.Name,
Url = data.Url
};
foreach (var pointData in data.Points)
{
AddPoint(series, pointData.XValue, pointData.YValue);
}
chart.Series.Add(series);
}
private void AddPoint(Series series, string xValue, float yValue)
{
var point = new DataPoint
{
AxisLabel = xValue
};
point.SetValueXY(xValue, yValue);
series.Points.Add(point);
}
, где код для объекта настроек:
public static ChartSettings TaskSummary = new ChartSettings
{
ChartType = SeriesChartType.StackedColumn,
Height = Unit.Pixel(300),
Width = Unit.Pixel(450),
PaletterCustomColors = new[]
{
Color.FromArgb(191, 214, 151),
Color.FromArgb(249, 255, 149),
Color.FromArgb(191, 79, 75),
Color.Green
},
ShowLegend = true
};
Спасибо за помощь.