本文将介绍通过Java程序在PPT幻灯片中添加混合图表的方法,即,将不同类型的图表类型放置在同一图表中,用于展示同一时期或阶段的数据在不同参数标准下的变化情况,便于对数据的综合分析。

使用工具:Free Spire.Presentation for Java(免费版)

Jar文件获取及导入:

方法1:通过官网下载jar文件包。下载后,解压文件,并将lib文件夹下的Spire.Presentation.jar导入java程序。参考如下导入效果:

方法2:通过maven仓库安装导入。可参考导入方法。

Java代码示例(供参考)

import com.spire.presentation.*;

import com.spire.presentation.charts.ChartType;

import com.spire.presentation.charts.IChart;

import com.spire.presentation.drawing.FillFormatType;

import java.awt.geom.Rectangle2D;

public class Chart {

public static void main(String[] args) throws Exception{

//创建PowerPoint文档

Presentation presentation = new Presentation();

//添加一个柱状图

Rectangle2D.Double rect = new Rectangle2D.Double(60, 100, 600, 350);

IChart chart = presentation.getSlides().get(0).getShapes().appendChart(ChartType.COLUMN_CLUSTERED, rect);

//设置图表名称

chart.getChartTitle().getTextProperties().setText("上半年销量");

chart.getChartTitle().getTextProperties().isCentered(true);

chart.getChartTitle().setHeight(30);

chart.hasTitle(true);

//写入图表数据

chart.getChartData().get(0,0).setText("月份");

chart.getChartData().get(0,1).setText("销量");

chart.getChartData().get(0,2).setText("环比增长(%)");

chart.getChartData().get(1,0).setText("1月");

chart.getChartData().get(1,1).setNumberValue(120);

chart.getChartData().get(1,2).setNumberValue(12);

chart.getChartData().get(2,0).setText("2月");

chart.getChartData().get(2,1).setNumberValue(100);

chart.getChartData().get(2,2).setNumberValue(10);

chart.getChartData().get(3,0).setText("3月");

chart.getChartData().get(3,1).setNumberValue(80);

chart.getChartData().get(3,2).setNumberValue(9);

chart.getChartData().get(4,0).setText("4月");

chart.getChartData().get(4,1).setNumberValue(120);

chart.getChartData().get(4,2).setNumberValue(15);

chart.getChartData().get(5,0).setText("5月");

chart.getChartData().get(5,1).setNumberValue(90);

chart.getChartData().get(5,2).setNumberValue(11);

chart.getChartData().get(6,0).setText("6月");

chart.getChartData().get(6,1).setNumberValue(110);

chart.getChartData().get(6,2).setNumberValue(10.5);

//设置系列标签数据来源

chart.getSeries().setSeriesLabel(chart.getChartData().get("B1", "C1"));

//设置分类标签数据来源

chart.getCategories().setCategoryLabels(chart.getChartData().get("A2", "A7"));

//设置系列的数据来源

chart.getSeries().get(0).setValues(chart.getChartData().get("B2", "B7"));

chart.getSeries().get(1).setValues(chart.getChartData().get("C2", "C7"));

chart.getSeries().get(1).getDataLabels().setLabelValueVisible(true);//设置显示系列2的数据标签值

chart.getSeries().get(1).setType(ChartType.LINE_MARKERS);//将系列2的图表类型设置为折线图

chart.getSeries().get(1).setUseSecondAxis(true);//将系列2绘制在次坐标轴

chart.getSecondaryValueAxis().getMajorGridTextLines().setFillType(FillFormatType.NONE);//不显示次坐标轴的网格线

//设置系列重叠

chart.setOverLap(-30);

//设置分类间距

chart.setGapDepth(200);

//保存文档

presentation.saveToFile("chart.pptx", FileFormat.PPTX_2013);

presentation.dispose();

}

}

图表添加效果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

java实现图表步骤_Java 在PPT中添加混合图表过程详解相关推荐

  1. python的执行过程_在交互式环境中执行Python程序过程详解

    前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...

  2. java二分查找法_java算法之二分查找法的实例详解

    java算法之二分查找法的实例详解 原理 假定查找范围为一个有序数组(如升序排列),要从中查找某一元素,如果该元素在此数组中,则返回其索引,否则返回-1.通过数组长度可取出中间位置元素的索引,将其值与 ...

  3. Java web 开发的概念、环境配置、创建项目过程详解(Eclipse)

    Java Web 开发 Java Web 开发概念 搭建过程 详解 在eclipse创建Dynamic Web Project 创建时选择Tomcat的版本 创建项目成功 eclipse环境下如何配置 ...

  4. python动态图表变化_Python数据可视化 pyecharts实现各种统计图表过程详解

    Python数据可视化 pyecharts实现各种统计图表过程详解 发布时间:2020-09-10 04:53:26 来源:脚本之家 阅读:78 1.pyecharts介绍 Echarts是一款由百度 ...

  5. java怎么加定时器_JAVA WEB程序中添加定时器

    JAVA WEB程序中添加定时器 //这是我的定时器类,用来定时执行某段任务: package com.my.time; import java.text.ParseException; import ...

  6. java 设置pdf 编码格式_Java 在PDF中添加条形码

    条形码,是由宽度不等的多个黑条和空白所组成,用以表达一组信息的图形标识符.通过给文档添加条形码,可以直观,快捷地访问和分享一些重要的信息.本文就将通过使用Java程序来演示如何在PDF文档中添加Cod ...

  7. java 远程shell脚本_java通过ssh连接服务器执行shell命令详解及实例

    java通过ssh连接服务器执行shell命令详解 java通过ssh连接服务器执行shell命令:JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转 ...

  8. java objectoutputstream怎么用_java序列化与ObjectOutputStream和ObjectInputStream的实例详解...

    java序列化与ObjectOutputStream和ObjectInputStream的实例详解 一个测试的实体类: public class Param implements Serializab ...

  9. 从java多态到策略模式_设计模式中的多态——策略模式详解

    2. 策略模式详解 2.1 策略模式定义 策略模式定义了一系列算法,并将每一个算法封装起来,而且使它们还可以相互替换.策略模式让算法独立于使用它的客户端而独立的变化. 可以使用多态进行类比来理解策略模 ...

最新文章

  1. 微软谈开源、赦盗版背后的商业逻辑
  2. VCSA中配置时间和时区,实测至6.5适用
  3. wse2.0实现webservice安全(转)
  4. Leetcode - 230. Kth Smallest Element in a BST (BST)
  5. 2020-11-25(多级页表的补充)
  6. go调用ethereum_Go语言爱好者周刊:第 76 期 — 新年计划做了吗?
  7. Jenkins+Maven+SVN快速搭建持续集成环境(转)
  8. 安卓手机突然很卡_你的安卓手机越来越卡?教你4招轻松解决问题!
  9. input输入数字验证
  10. 字符串大写转小写库函数_PHP程序无需使用库函数即可将字符串转换为大写
  11. Hadoop之HDFS的edits和fsimage查看器
  12. oracle中execute函数,Oracle 动态SQL execute immediate写法 zt
  13. linux下面实时查看进程,内存以及cpu使用情况使用命令
  14. 【iOS开发】什么是Bundle,每个iOS应用实际上是一个Bundle
  15. 百度搜索URL参数的含义
  16. 西北农林科技大学c语言上机题题答案,西北农林科技大学C语言上机实习4答案
  17. 小米 信号测试软件,如何测试出本地的联通、电信、移动信号网络的强弱?
  18. 利用大数据打造智慧港航运
  19. [乐意黎转载]从零开始学习jQuery (二) 万能的选择器
  20. 调用sleep后,我做了一个噩梦

热门文章

  1. 【单例深思】枚举实现单例原理
  2. OpenLayer学习之加载天地图在线地图
  3. hihoCoder#1082 : 然而沼跃鱼早就看穿了一切(做题总结)
  4. 科沃斯擦窗机器人擦不干净怎么办_高楼窗户怎么擦?有科沃斯无线窗宝再也不怕擦窗坠楼...
  5. 品管七大手法-3散布图(转载)
  6. ChatGPT - 横看成岭侧成峰
  7. 【微信公众号开发】自我学习第二章:关注事件触发的自动回复
  8. Bessie Goes Moo(暴力)
  9. php数字金字塔,探索埃及金字塔与天文以及数学的关系
  10. 计算机组装与维护学习网站,计算机组装与维护学习课件.ppt