`
zhenping
  • 浏览: 84814 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

JFreechart 折线图 折线大小、颜色设置、图标大小设置

 
阅读更多
public JFreeChart drawLineChart2D(DefaultCategoryDataset dataset,
String title, String scope) {
JFreeChart chart = ChartFactory.createLineChart(title, null, "数量",
dataset, PlotOrientation.VERTICAL, // 图表方向垂直
true, true, true);
chart.addSubtitle(new TextTitle(scope));
LegendTitle legend = chart.getLegend(); // 设置图例的字体
legend.setItemFont(new Font("宋体", Font.BOLD, 16));
// 获取折线图plot对象
CategoryPlot plot = (CategoryPlot) chart.getPlot();
// 设置背景颜色
plot.setBackgroundPaint(Color.WHITE);
// 设置网格竖线颜色
plot.setDomainGridlinePaint(Color.pink);
// 设置网格横线颜色
plot.setRangeGridlinePaint(Color.pink);
plot.setNoDataMessage("暂无数据显示!");// 没有数据显示的时候显示这个提示
// 取得横轴
CategoryAxis categoryAxis = plot.getDomainAxis();
// 设置横轴的字体
categoryAxis.setLabelFont(new Font("宋体", Font.BOLD, 16));
// 设置分类标签以45度倾斜
categoryAxis.setCategoryLabelPositions(CategoryLabelPositions.STANDARD);//
// 设置分类标签字体
categoryAxis.setTickLabelFont(new Font("宋体", Font.BOLD, 18));
// 取得纵轴
NumberAxis numberAxis = (NumberAxis) plot.getRangeAxis();
numberAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
// 设置纵轴的字体
numberAxis.setLabelFont(new Font("黑体", Font.PLAIN, 18));
numberAxis.setUpperMargin(0.15);//设置最高数据显示与顶端的距离
numberAxis.setLowerMargin(2);//设置最低的一个值与图片底端的距离
// 设置背景透明度(0~1)
plot.setBackgroundAlpha(1f);
// 设置前景色透明度(0~1)
plot.setForegroundAlpha(1f);
// 获取显示线条的对象
LineAndShapeRenderer lasp = (LineAndShapeRenderer) plot.getRenderer();
// 设置拐点是否可见/是否显示拐点
lasp.setBaseShapesVisible(true);
// 设置拐点不同用不同的形状
lasp.setDrawOutlines(true);
// 设置线条是否被显示填充颜色
lasp.setUseFillPaint(true);
// 设置拐点颜色
lasp.setBaseFillPaint(Color.blue);//蓝色
// 设置折线加粗
//lasp.setSeriesStroke(0, new BasicStroke(3F));
lasp.setSeriesOutlineStroke(0, new BasicStroke(4.5F));//设置折点的大小
lasp.setSeriesOutlineStroke(1, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(2, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(3, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(4, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(5, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(6, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(7, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(8, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(9, new BasicStroke(4.5F));
lasp.setSeriesOutlineStroke(10, new BasicStroke(4.5F));
// 设置折线拐点

// lasp.setSeriesShape(0, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(1, new java.awt.geom.Ellipse2D.Double(-1D, -2D,
// 10D, 10D));
// lasp.setSeriesShape(2, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(3, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(4, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(5, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(6, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(7, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(8, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(9, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
// lasp.setSeriesShape(10, new java.awt.geom.Ellipse2D.Double(-5D, -5D,
// 10D, 10D));
plot.setNoDataMessage("没有相关统计数据");
LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot
.getRenderer();// 设置样式


// 设置每个地区所包含的平行柱的之间距离
renderer
.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
renderer.setItemLabelsVisible(true);// 显示每个点上的数据值的提示工具,数据标签是否可见
renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(
ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));
renderer.setItemLabelFont(new Font("黑体", Font.PLAIN, 14));// 设置数字的字体大小
renderer.setItemLabelAnchorOffset(2D);
// // 设置颜色-----------------------------------------------------------
renderer.setSeriesStroke(0, new BasicStroke(4.0F));//设置折线大小
// renderer.setSeriesPaint(0, Color.RED);//红色
renderer.setSeriesStroke(1, new BasicStroke(4.0F));
// renderer.setSeriesPaint(1, Color.GREEN);//绿色
renderer.setSeriesStroke(2, new BasicStroke(4.0F));
// renderer.setSeriesPaint(2, Color.ORANGE);//c橙色
renderer.setSeriesStroke(3, new BasicStroke(4.0F));
// renderer.setSeriesPaint(3, Color.BLUE);//蓝色
renderer.setSeriesStroke(4, new BasicStroke(4.0F));
// renderer.setSeriesPaint(4, Color.BLACK);//黑色
renderer.setSeriesStroke(5, new BasicStroke(4.0F));
// renderer.setSeriesPaint(5, Color.CYAN);
renderer.setSeriesStroke(6, new BasicStroke(4.0F));
renderer.setSeriesStroke(7, new BasicStroke(4.0F));
renderer.setSeriesStroke(8, new BasicStroke(4.0F));
renderer.setSeriesStroke(9, new BasicStroke(4.0F));
renderer.setSeriesStroke(10, new BasicStroke(4.0F));
plot.setRenderer(renderer);// 使用我们设计的效果F
return chart;
}
分享到:
评论

相关推荐

    report图状报表(柱状图,饼状图,折线图)

    Java中,JFreeChart同样支持创建折线图,并且支持多系列数据、自定义轴刻度以及添加数据标记等功能。 在实际开发中,Java程序员通常会结合数据库查询结果或者CSV、Excel等数据文件来生成这些图表。他们需要处理数据...

    jfreechart曲线图饼图柱状图 免费图标 图表

    JFreeChart支持多种图表类型,如折线图(曲线图)、饼图、柱状图、散点图、甘特图等,同时提供了自定义样式和颜色配置的灵活性。 ### 2. 曲线图 曲线图(Line Chart)是表示数据趋势的理想选择。使用JFreeChart...

    JFreeChart

    JFreeChart 是一个流行的、开源的 Java 图表库,它为开发者提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、甘特图等,使得在 Java 应用程序中创建高质量的图形变得简单。在"JFreeChart sample"中,我们...

    JFreeChart,Java开源图表框架

    - **选择图表类型**:根据需求选择合适的图表类型,如`JFreeChart.createLineChart()`创建折线图,`JFreeChart.createBarChart()`创建柱状图。 - **设置图表参数**:包括标题、轴标签、图例、背景色等,可以通过`...

    jfreechart 1.0.13 示例源码

    JFreeChart是一个强大的Java库,用于创建各种类型的图表,如折线图、柱状图、饼图、散点图等。在"jfreechart 1.0.13 示例源码"中,我们可以深入理解如何利用这个库来构建复杂的图表应用。这个压缩包包含了名为"study...

    jreechart官网

    关于JFreeChart的标签,"jreechart"是项目名称,"图标"代表它可以创建各种图表,"折线图"和"报表"则具体指出了JFreeChart支持的图表类型和应用场景。折线图常用于展示数据随时间的变化趋势,报表则是数据展示的一种...

    新建文件夹_jfreechart_java_

    1. **图表类型丰富**:JFreeChart支持多种图表类型,如折线图、柱状图、饼图、散点图、甘特图、热力图等,适用于数据分析和展示。 2. **自定义程度高**:开发者可以定制图表的每一个细节,包括颜色、字体、背景、...

    用java实现word统计报表和图形统计的导出

    在Java中,JFreeChart是一个强大的开源库,用于生成各种类型的图表,如折线图、柱状图、饼图等。我们可以使用它来根据数据生成统计图形,然后将其嵌入到Word文档中。首先,我们需要创建一个JFreeChart对象,配置其...

    在Java Web中使用JFreechart创建图表信息(主要用于统计方面)

    在Java Web开发中,JFreeChart是一个非常强大的库,它允许开发者创建各种复杂的图表,包括折线图、柱状图、饼图、散点图等,适用于数据分析和展示。这篇博客文章“在Java Web中使用JFreechart创建图表信息(主要用于...

    java插件软件

    3. **JFreeChart**:这是一个强大的Java图表库,可以生成多种类型的高质量图表,如折线图、柱状图、饼图和散点图等。它广泛应用于数据分析和可视化,尤其是在报表和商业智能应用中。 4. **JNI(Java Native ...

    java 图形统计器

    在图形统计器中,这些API通常用于创建各种统计图表,如条形图、折线图、饼图等。 3. **数据处理**:在构建图形统计器前,需要对数据进行预处理,例如,从文件或数据库中读取数据,进行排序、过滤、聚合等操作。Java...

    Ireport4.5.0制作3D饼图

    JasperReport作为一款优秀的报表设计工具,支持多种图表类型的设计,包括饼图、柱状图、折线图等。本文将详细介绍如何在Ireport 4.5.0版本中创建3D饼图,并结合实际操作步骤进行说明。 #### 一、基础知识介绍 - **...

    iReport_cubebi、、jfreechar 案例

    JFreeChart是一个流行的Java库,用于生成各种图表,包括折线图、柱状图、饼图等。 在描述中提到的博文链接指向了一个ITEYE博客,尽管具体内容无法在此提供,但通常这样的博客会分享作者使用iReport、Cubebi和...

    数据大屏可视化模板(车联网平台数据概览)

    这些库提供了丰富的图表类型,如折线图、柱状图、饼图和地图等,可用于展示车辆分布、行驶路径、性能指标等。在车联网场景下,地图可视化尤其重要,可以清晰地展示车辆的位置和轨迹。 4. 响应式设计:为了适应不同...

    java学生管理系统

    在Java中,可以使用诸如JFreeChart或JavaFX的Chart API来生成各种类型的图表,如柱状图、饼图、折线图等。这些图表用于展示学生数量、平均成绩、年龄分布等统计信息,帮助管理者快速理解和解读大量数据。通过动态...

    java根据模板动态生成PDF实例

    JFreeChart则提供了丰富的图表绘制功能,包括折线图、柱状图和饼图等,非常适合用于数据可视化。通过JFreeChart,我们可以根据业务数据动态生成图表,并将其嵌入到PDF中。 在实现过程中,我们可以将PDF生成的组件...

    java问卷调查统计软件

    6. 数据可视化:利用JavaFX或JFreeChart等库生成图表,如柱状图、饼图、折线图等,直观展示统计结果。 在`src`目录下,可能包含了以下内容: - Java源代码文件(.java),包含主程序、数据处理类、GUI组件类等。 - ...

    Dashboard_purpose_dashboard_

    5. **JChart**:例如JFreeChart库,可以创建各种图表,如折线图、柱状图、饼图,用于数据可视化。 仪表板的主要目的有以下几点: 1. **数据可视化**:通过图形化方式展示数据,使得用户可以快速理解和解读复杂的...

    Apress - The Definitive Guide to Java Swing, Third Edition.pdf

    - **数据可视化**:通过集成图表库(如 JFreeChart),Swing 可以轻松实现数据可视化功能,比如绘制折线图、柱状图等。 #### 四、Swing 的优势与局限性 - **优势**: - 跨平台性:Swing 是基于纯 Java 实现的,...

    SpeleoGraph:用于绘制洞穴学传感器图形的 Java 应用程序

    这些库支持多种图表类型,如折线图、柱状图、饼图等,能够有效地展示洞穴环境随时间变化的趋势。用户可以方便地查看不同时间段内的数据,以及不同传感器之间的关系。 此外,SpeleoGraph可能还具有数据导入和导出...

Global site tag (gtag.js) - Google Analytics