ปรับแต่งแกนแผนภูมิในงานนำเสนอด้วย PHP
ภาพรวม
บทความนี้อธิบายวิธีการปรับแต่งแกนของแผนภูมิใน Aspose.Slides โดยจะแสดงวิธีการรับค่าจริงของแกน, สลับข้อมูลระหว่างแกน, ซ่อนแกนแนวตั้งหรือแนวนอนสำหรับแผนภูมิเส้น, เปลี่ยนประเภทของแกนหมวดหมู่, ตั้งค่ารูปแบบวันที่สำหรับค่าของแกนหมวดหมู่, หมุนชื่อแกน, ตั้งตำแหน่งแกน, และแสดงป้ายหน่วยบนแกนค่าที่.
รับค่าสูงสุดบนแกนแนวตั้งในแผนภูมิ
Aspose.Slides for PHP via Java ช่วยให้คุณสามารถรับค่าต่ำสุดและค่าสูงสุดบนแกนแนวตั้งได้ ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างอินสแตนซ์ของคลาสPresentation
- เข้าถึงสไลด์แรก.
- เพิ่มแผนภูมิพร้อมข้อมูลเริ่มต้น.
- รับค่ามากสุดจริงบนแกน.
- รับค่าน้อยสุดจริงบนแกน.
- รับหน่วยหลักจริงของแกน.
- รับหน่วยย่อยจริงของแกน.
- รับสเกลหน่วยหลักจริงของแกน.
- รับสเกลหน่วยย่อยจริงของแกน.
ตัวอย่างโค้ดนี้—การดำเนินการตามขั้นตอนข้างต้น—แสดงวิธีรับค่าที่ต้องการ:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Area, 100, 100, 500, 350);
$chart->validateChartLayout();
$maxValue = $chart->getAxes()->getVerticalAxis()->getActualMaxValue();
$minValue = $chart->getAxes()->getVerticalAxis()->getActualMinValue();
$majorUnit = $chart->getAxes()->getHorizontalAxis()->getActualMajorUnit();
$minorUnit = $chart->getAxes()->getHorizontalAxis()->getActualMinorUnit();
# บันทึกงานนำเสนอ
$pres->save("MaxValuesVerticalAxis_out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
สลับข้อมูลระหว่างแกน
Aspose.Slides ช่วยให้คุณสลับข้อมูลระหว่างแกนได้อย่างรวดเร็ว—ข้อมูลที่แสดงบนแกนแนวตั้ง (y-axis) จะย้ายไปยังแกนแนวนอน (x-axis) และในทางกลับกัน.
โค้ด PHP นี้แสดงวิธีการดำเนินการสลับข้อมูลระหว่างแกนบนแผนภูมิ:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 100, 100, 400, 300);
# สลับแถวและคอลัมน์
$chart->getChartData()->switchRowColumn();
# บันทึกงานนำเสนอ
$pres->save("SwitchChartRowColumns_out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
ปิดการใช้งานแกนแนวตั้งสำหรับแผนภูมิเส้น
โค้ด PHP นี้แสดงวิธีการซ่อนแกนแนวตั้งสำหรับแผนภูมิเส้น:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Line, 100, 100, 400, 300);
$chart->getAxes()->getVerticalAxis()->setVisible(false);
$pres->save("chart.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
ปิดการใช้งานแกนแนวนอนสำหรับแผนภูมิเส้น
โค้ดนี้แสดงวิธีการซ่อนแกนแนวนอนสำหรับแผนภูมิเส้น:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Line, 100, 100, 400, 300);
$chart->getAxes()->getHorizontalAxis()->setVisible(false);
$pres->save("chart.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
เปลี่ยนแกนหมวดหมู่
โดยใช้คุณสมบัติ CategoryAxisType คุณสามารถระบุประเภทของแกนหมวดหมู่ที่ต้องการ (date หรือ text) โค้ดนี้แสดงการทำงาน:
$presentation = new Presentation("ExistingChart.pptx");
try {
$chart = $presentation->getSlides()->get_Item(0)->getShapes()->get_Item(0);
$chart->getAxes()->getHorizontalAxis()->setCategoryAxisType(CategoryAxisType::Date);
$chart->getAxes()->getHorizontalAxis()->setAutomaticMajorUnit(false);
$chart->getAxes()->getHorizontalAxis()->setMajorUnit(1);
$chart->getAxes()->getHorizontalAxis()->setMajorUnitScale(TimeUnitType::Months);
$presentation->save("ChangeChartCategoryAxis_out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ตั้งค่ารูปแบบวันที่สำหรับค่าของแกนหมวดหมู่
Aspose.Slides for PHP via Java ช่วยให้คุณตั้งค่ารูปแบบวันที่สำหรับค่าของแกนหมวดหมู่ การดำเนินการนี้แสดงในโค้ด PHP นี้:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Area, 50, 50, 450, 300);
$wb = $chart->getChartData()->getChartDataWorkbook();
$wb->clear(0);
$chart->getChartData()->getCategories()->clear();
$chart->getChartData()->getSeries()->clear();
$chart->getChartData()->getCategories()->add($wb->getCell(0, "A2", convertToOADate(new GregorianCalendar(2015, 1, 1))));
$chart->getChartData()->getCategories()->add($wb->getCell(0, "A3", convertToOADate(new GregorianCalendar(2016, 1, 1))));
$chart->getChartData()->getCategories()->add($wb->getCell(0, "A4", convertToOADate(new GregorianCalendar(2017, 1, 1))));
$chart->getChartData()->getCategories()->add($wb->getCell(0, "A5", convertToOADate(new GregorianCalendar(2018, 1, 1))));
$series = $chart->getChartData()->getSeries()->add(ChartType::Line);
$series->getDataPoints()->addDataPointForLineSeries($wb->getCell(0, "B2", 1));
$series->getDataPoints()->addDataPointForLineSeries($wb->getCell(0, "B3", 2));
$series->getDataPoints()->addDataPointForLineSeries($wb->getCell(0, "B4", 3));
$series->getDataPoints()->addDataPointForLineSeries($wb->getCell(0, "B5", 4));
$chart->getAxes()->getHorizontalAxis()->setCategoryAxisType(CategoryAxisType::Date);
$chart->getAxes()->getHorizontalAxis()->setNumberFormatLinkedToSource(false);
$chart->getAxes()->getHorizontalAxis()->setNumberFormat("yyyy");
$pres->save("output.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
ตั้งค่ามุมการหมุนสำหรับชื่อแกนของแผนภูมิ
Aspose.Slides for PHP via Java ช่วยให้คุณตั้งค่ามุมการหมุนสำหรับชื่อแกนของแผนภูมิ โค้ด PHP นี้แสดงการดำเนินการ:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 450, 300);
$chart->getAxes()->getVerticalAxis()->setTitle(true);
$chart->getAxes()->getVerticalAxis()->getTitle()->getTextFormat()->getTextBlockFormat()->setRotationAngle(90);
$pres->save("output.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
ตั้งค่าตำแหน่งแกนบนแกนหมวดหมู่หรือแกนค่า
Aspose.Slides for PHP via Java ช่วยให้คุณตั้งค่าตำแหน่งของแกนในแกนหมวดหมู่หรือแกนค่า โค้ด PHP นี้แสดงวิธีการทำงาน:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 450, 300);
$chart->getAxes()->getHorizontalAxis()->setAxisBetweenCategories(true);
$pres->save("output.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
เปิดการแสดงป้ายหน่วยบนแกนค่าของแผนภูมิ
Aspose.Slides for PHP via Java ช่วยให้คุณกำหนดค่าแผนภูมิเพื่อแสดงป้ายหน่วยบนแกนค่าของแผนภูมิ โค้ด PHP นี้แสดงการดำเนินการ:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 450, 300);
$chart->getAxes()->getVerticalAxis()->setDisplayUnit(DisplayUnitType::Millions);
$pres->save("output.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
คำถามที่พบบ่อย
ฉันจะตั้งค่าที่ที่แกนหนึ่งข้ามอีกแกน (การข้ามแกน) อย่างไร?
แกนมีการตั้งค่า crossing setting: คุณสามารถเลือกให้ข้ามที่ศูนย์, ที่ค่าหมวดหมู่/ค่าสูงสุด, หรือที่ค่าตัวเลขเฉพาะ นี่มีประโยชน์สำหรับการเลื่อนแกน X ขึ้นหรือลงหรือเพื่อเน้นเส้นฐาน.
ฉันสามารถตั้งตำแหน่งป้ายลำดับ (tick labels) ที่สัมพันธ์กับแกน (ข้างเคียง, ภายนอก, ภายใน) อย่างไร?
ตั้งค่า label position เป็น “cross”, “outside” หรือ “inside” ค่าต่าง ๆ นี้ส่งผลต่อการอ่านและช่วยประหยัดพื้นที่, โดยเฉพาะอย่างยิ่งในแผนภูมิขนาดเล็ก.