Трендовая линия
Contents
[
Hide
]
Добавление трендовой линии
Aspose.Slides для PHP на базе Java предоставляет простой API для управления различными трендовыми линиями графиков:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд по его индексу.
- Добавьте график с данными по умолчанию и любого желаемого типа (в этом примере используется ChartType::ClusteredColumn).
- Добавление экспоненциальной трендовой линии для первой серии графика.
- Добавление линейной трендовой линии для первой серии графика.
- Добавление логарифмической трендовой линии для второй серии графика.
- Добавление трендовой линии скользящего среднего для второй серии графика.
- Добавление полиномиальной трендовой линии для третьей серии графика.
- Добавление степени для третьей серии графика.
- Запишите измененную презентацию в файл PPTX.
Следующий код используется для создания графика с трендовыми линиями.
# Создайте экземпляр класса Presentation
$pres = new Presentation();
try {
# Создание графика со столбчатым кластером
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 20, 20, 500, 400);
# Добавление экспоненциальной трендовой линии для первой серии графика
$tredLinep = $chart->getChartData()->getSeries()->get_Item(0)->getTrendLines()->add(TrendlineType::Exponential);
$tredLinep->setDisplayEquation(false);
$tredLinep->setDisplayRSquaredValue(false);
# Добавление линейной трендовой линии для первой серии графика
$tredLineLin = $chart->getChartData()->getSeries()->get_Item(0)->getTrendLines()->add(TrendlineType::Linear);
$tredLineLin->setTrendlineType(TrendlineType::Linear);
$tredLineLin->getFormat()->getLine()->getFillFormat()->setFillType(FillType::Solid);
$tredLineLin->getFormat()->getLine()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->RED);
# Добавление логарифмической трендовой линии для второй серии графика
$tredLineLog = $chart->getChartData()->getSeries()->get_Item(1)->getTrendLines()->add(TrendlineType::Logarithmic);
$tredLineLog->setTrendlineType(TrendlineType::Logarithmic);
$tredLineLog->addTextFrameForOverriding("Новая логарифмическая трендовая линия");
# Добавление трендовой линии скользящего среднего для второй серии графика
$tredLineMovAvg = $chart->getChartData()->getSeries()->get_Item(1)->getTrendLines()->add(TrendlineType::MovingAverage);
$tredLineMovAvg->setTrendlineType(TrendlineType::MovingAverage);
$tredLineMovAvg->setPeriod(3);
$tredLineMovAvg->setTrendlineName("Новое имя трендовой линии");
# Добавление полиномиальной трендовой линии для третьей серии графика
$tredLinePol = $chart->getChartData()->getSeries()->get_Item(2)->getTrendLines()->add(TrendlineType::Polynomial);
$tredLinePol->setTrendlineType(TrendlineType::Polynomial);
$tredLinePol->setForward(1);
$tredLinePol->setOrder(3);
# Добавление степени для третьей серии графика
$tredLinePower = $chart->getChartData()->getSeries()->get_Item(1)->getTrendLines()->add(TrendlineType::Power);
$tredLinePower->setTrendlineType(TrendlineType::Power);
$tredLinePower->setBackward(1);
# Сохранение презентации
$pres->save("ChartTrendLines_out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Добавление пользовательской линии
Aspose.Slides для PHP на базе Java предоставляет простой API для добавления пользовательских линий в график. Чтобы добавить простую прямую линию на выбранный слайд презентации, выполните следующие шаги:
- Создайте экземпляр класса Presentation
- Получите ссылку на слайд, используя его индекс
- Создайте новый график, используя метод AddChart, предоставленный объектом Shapes
- Добавьте автоформу типа линия, используя метод AddAutoShape, предоставленный объектом Shapes
- Установите цвет линий формы.
- Запишите измененную презентацию в файл PPTX
Следующий код используется для создания графика с пользовательскими линиями.
# Создайте экземпляр класса Presentation
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 100, 100, 500, 400);
$shape = $chart->getUserShapes()->getShapes()->addAutoShape(ShapeType::Line, 0, $chart->getHeight() / 2, $chart->getWidth(), 0);
$shape->getLineFormat()->getFillFormat()->setFillType(FillType::Solid);
$shape->getLineFormat()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->RED);
$pres->save("Presentation.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}