Я настраиваю гистограмму, которая в конечном итоге будет экспортирована в слайд PowerPoint. У меня все отлично экспортируется, но было запрошено, чтобы в верхней части каждого столбца значение этого столбца помещалось прямо над ним. Я посмотрел вверх и вниз и, к сожалению, не смог узнать, как это сделать.
Значение гистограммы Aspose VB.NET
Ответы (1)
Я работаю разработчиком социальных сетей в Aspose. Проверьте следующий пример кода, чтобы установить пользовательские метки в качестве значений и задать положение метки.
'Instantiate Presentation class that represents PPTX file
Dim pres As New Presentation()
'Access first slide
Dim sld As ISlide = pres.Slides(0)
' Add chart with default data
Dim chart As IChart = sld.Shapes.AddChart(ChartType.ClusteredBar, 0, 0, 500, 500)
'Setting chart Title
'chart.ChartTitle.TextFrameForOverriding.Text = "Sample Title";
chart.ChartTitle.AddTextFrameForOverriding("Sample Title")
chart.ChartTitle.TextFrameForOverriding.TextFrameFormat.CenterText = NullableBool.True
chart.ChartTitle.Height = 20
chart.HasTitle = True
'Set first series to Show Values
chart.ChartData.Series(0).Labels.DefaultDataLabelFormat.ShowValue = True
'Setting the index of chart data sheet
Dim defaultWorksheetIndex As Integer = 0
'Getting the chart data worksheet
Dim fact As IChartDataWorkbook = chart.ChartData.ChartDataWorkbook
'Delete default generated series and categories
chart.ChartData.Series.Clear()
chart.ChartData.Categories.Clear()
Dim s As Integer = chart.ChartData.Series.Count
s = chart.ChartData.Categories.Count
'Adding new series
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.Type)
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.Type)
'Adding new categories
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"))
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"))
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"))
'Take first chart series
Dim series As IChartSeries = chart.ChartData.Series(0)
'Now populating series data
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 1, 20))
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 50))
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 30))
'Setting fill color for series
series.Format.Fill.FillType = FillType.Solid
series.Format.Fill.SolidFillColor.Color = System.Drawing.Color.Red
'Set Data Labels for first series
For Each point As IChartDataPoint In series.DataPoints
Dim lbl As IDataLabel = point.Label
lbl.DataLabelFormat.ShowValue = True
lbl.DataLabelFormat.Position = LegendDataLabelPosition.OutsideEnd
Next point
'Take second chart series
series = chart.ChartData.Series(1)
'Now populating series data
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 2, 30))
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 2, 10))
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 2, 60))
'Setting fill color for series
series.Format.Fill.FillType = FillType.Solid
series.Format.Fill.SolidFillColor.Color = System.Drawing.Color.Green
'Set Data Labels for first series
For Each point As IChartDataPoint In series.DataPoints
Dim lbl As IDataLabel = point.Label
lbl.DataLabelFormat.ShowValue = True
lbl.DataLabelFormat.Position = LegendDataLabelPosition.OutsideEnd
Next point
'Save presentation with chart
pres.Save("c:\data\AsposeChart.pptx", Aspose.Slides.Export.SaveFormat.Pptx)
Ниже приведен пример из приведенного выше кода, чтобы дать представление о том, как настроить метки.
'Set Data Labels for first series
For Each point As IChartDataPoint In series.DataPoints
Dim lbl As IDataLabel = point.Label
lbl.DataLabelFormat.ShowValue = True
lbl.DataLabelFormat.Position = LegendDataLabelPosition.OutsideEnd
Next point
person
Nausherwan Aslam
schedule
28.05.2014
Большое спасибо! Это очень помогло. У меня есть вопрос вдогонку. Я просмотрел веб-сайт Aspose и не смог найти конкретной информации о циклическом просмотре набора данных и создании из него таблицы на основе имен столбцов и определенных строк. У вас случайно нет примера кода, подобного тому, который вы разместили в ответе выше?
- person Gil; 29.05.2014
Не могли бы вы уточнить свое требование на примере. Я буду рад помочь вам.
- person Nausherwan Aslam; 29.05.2014