`

JFreeChart折线图(用ValueMarker标识定值)

阅读更多
[align=left][/align][color=indigo]

public String getJFreeChatPhoto(List list) {
try {
io.getRequest().setCharacterEncoding("UTF-8");
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String title = "";
String xt = "\u65E5\u671F";
String yt = "\u5361\u8DEF\u91CC(\u5927\u5361)";

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

Iterator<UserFoodRecordBean> it = list.iterator();

while (it.hasNext()) {
UserFoodRecordBean re = it.next();
dataset.addValue(re.getCaloriesimple(), "Classes", re
.getUserfoodDate());
}

JFreeChart chart = ChartFactory.createLineChart("", xt, yt, dataset,
PlotOrientation.VERTICAL, false, true, false);

chart.setBackgroundPaint(Color.WHITE);

CategoryPlot plot = (CategoryPlot) chart.getPlot();

plot.setRangeGridlinePaint(Color.LIGHT_GRAY);
plot.setDomainGridlinePaint(Color.LIGHT_GRAY);

plot.setBackgroundPaint(Color.WHITE);

plot
.setNoDataMessage("\u60A8\u9084\u6C92\u6709\u4EFB\u4F55\u98F2\u98DF\u8A18\u9304");
plot.setNoDataMessageFont(new Font("", Font.BOLD, 14));
plot.setNoDataMessagePaint(new Color(154, 207, 136));

plot.setAxisOffset(new RectangleInsets(0d, 0d, 0d, 5d)); // 设置轴距离面板的边距。(这样可以避免显示不全的问题).

ValueMarker valuemarker = new ValueMarker(getStaticCalorie());   [color=orange]//画出标识定值,显示出一条直线,并且可以在直线附近标记内容,用setLabel(String str);
// valuemarker.setLabelOffsetType(LengthAdjustmentType.NO_CHANGE);
valuemarker.setPaint(Color.red);
valuemarker.setStroke(new BasicStroke(1.0F));
valuemarker.setLabel("\u975C\u614B\u80FD\u91CF\u6D88\u8017\u503C");
valuemarker.setLabelFont(new Font("SansSerif", 0, 11));
valuemarker.setLabelPaint(Color.BLUE);
valuemarker.setLabelAnchor(RectangleAnchor.TOP_LEFT);
valuemarker.setLabelTextAnchor(TextAnchor.BOTTOM_LEFT);
valuemarker.setLabelOffset(new RectangleInsets(5, 5, 5, 5));
float [] f={2,4,2,4};
        valuemarker.setStroke(new BasicStroke(2.0f,1,1,0,f,1.0f));    //setStroke是创建实线对象,如果在第五个参数为float[]情况下则是虚线效果。这里是虚线效果。

plot.addRangeMarker(valuemarker, Layer.BACKGROUND);

LineAndShapeRenderer ren = (LineAndShapeRenderer) plot.getRenderer();

ren.setSeriesShapesVisible(0, true); // 第一条线显示折点,第二条不设置该属性就表示不显示。

ren.setBaseLinesVisible(true);
ren.setSeriesPaint(0, new Color(154, 207, 136));// 设置线条的颜色。

ren.setSeriesLinesVisible(1, true);
ren.setBaseItemLabelsVisible(true);
                  ren.setStroke(new BasicStroke(3.0f),false);这个属性是调整折线的粗细。new BasicStroke(float a,)可以创建实线和虚线的实例。
HttpServletRequest request = io.getRequest();
String filename = "";
String graphURL = "";
try {
filename = ServletUtilities.saveChartAsPNG(chart, 750, 230, null,
io.getSession());
graphURL = request.getContextPath() + "/displayChart?filename="
+ filename;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

io.setData("filename", filename, BeanShare.BEAN_SHARE_REQUEST);
io.setData("graphURL", graphURL, BeanShare.BEAN_SHARE_REQUEST);

return graphURL;
}
[/color][/color]

[img][/img]
  • 大小: 10.5 KB
分享到:
评论

相关推荐

    jfreechart折线图demo

    JFreeChart 是一个用 Java 编写的开源图表库,它提供了丰富的图表类型,包括折线图、柱状图、饼图等,适用于各种数据可视化需求。在这个“jfreechart折线图demo”中,我们将深入探讨如何使用 JFreeChart 创建和展示...

    jfreechart 折线图的一个例子

    在这个例子中,我们将深入探讨如何使用 JFreeChart 创建一个折线图。 首先,确保你已经正确地在项目中引入了 JFreeChart 的依赖。通常,你可以通过 Maven 或 Gradle 将 JFreeChart 添加到构建文件中。对于 Maven,...

    jfreechart 漂亮的折线图

    利用jfreechart绘制的漂亮的折线图,实现双纵坐标,折线点标签还带箭头指示,非常直观,需要提前下载jfreechart.jar文件,否则我的类会报错,也即是要配置运行环境

    jfreechart 折线图 应用

    该程序为main 函数,定义了三个方法,分别是jfreechart三种实现折线图的类型,返回的是一个chart 本程序是把图片保存到本地,当然实际应用中,只要在程序和页面中做相关配置即可以使用。 因为图片带点透明,所以...

    jfreechart 堆栈柱状图跟折线图结合拼接

    jfreechart 堆栈柱状图跟折线图结合拼接 jar包请戳http://download.csdn.net/detail/a156435646/7424707

    JSP利用JFreeChart生成折线图

    在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而JFreeChart则是一个强大的Java图表库,能够帮助开发者生成各种复杂的图表,包括折线图。本教程将详细介绍如何在JSP中利用JFreeChart库来...

    JFreeChart 折线、柱状组合图

    public JFreeChart createChart(String Ytitle, String title, CategoryDataset lineData, CategoryDataset barData) { //参考附件 return chart; } //struts 部分 &lt;!--begin 维优特例 --&gt; ...

    jfreechart折线图读取数据库数据的显示(mysql)

    在Java编程环境中,JFreeChart库是一个非常强大的工具,用于创建各种类型的图表,包括折线图、柱状图、饼图等。本教程将详细讲解如何利用JFreeChart结合MySQL数据库来生成动态折线图,展示数据库中的数据。 首先,...

    jfreechart折线图.zip

    ValueStack vs=(ValueStack)request.getAttribute("struts.valueStack"); List list=(List)vs.findValue("list"); Iterator itor=list.iterator(); while(itor.hasNext()) { ... &lt;%} %&gt;

    JFreeChart饼图、折线图等资料学习

    JFreeChart是一款强大的Java图形库,它允许开发者创建多种类型的图表,包括饼图、折线图、柱状图、散点图以及更多其他类型的图表。这个资料包包含了JFreeChart的核心库(jfreechart-1.0.16.jar)和其依赖库JCommon...

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    JFreeChart 是一个开源的Java库,用于生成高质量的2D图表,如折线图、饼图、柱状图和堆栈柱状图等。它广泛应用于数据分析、报告和应用程序中,提供丰富的自定义选项来满足各种视觉需求。在本项目中,你将找到能够...

    jfreechart绘制折线图(平面和3D)

    在本主题中,我们将深入探讨如何使用JFreeChart来绘制平面和3D的折线图。 首先,让我们了解折线图的基本概念。折线图是一种用直线段连接一系列数据点的图表,常用于展示数据随时间的变化趋势。在平面折线图中,x轴...

    java JXL导入导出Excel源码及jfreechart 生成折线图,饼图

    java JXL导出Excel源码及jfreechart 生成折线图,饼图 java JXL导出Excel源码及jfreechart 生成折线图,饼图 java JXL导出Excel源码及jfreechart 生成折线图,饼图

    JFreeChart双Y轴折线图实例,可以直接运行

    JFreeChart双Y轴折线图实例,可以直接运行,实例类为LineChartDemo1.JAVA,有注释。 若想在web工程使用只需如下。 String filename = ServletUtilities.saveChartAsPNG(jfreechart, 600, 400, null, session); ...

    jfreechart绘制的风速风向玫瑰图

    jfreechart是Java中一个流行的图表库,它提供了许多种类的图表,包括柱状图、折线图、饼图、雷达图等。本文主要介绍如何使用jfreechart绘制风速风向玫瑰图。 首先,了解jfreechart的基本结构。jfreechart的核心是...

    jfreechart根据24小时数据画折线图

    在本例中,我们使用jfreechart来绘制一个根据24小时内数据变化的折线图。该示例展示了如何自定义X轴和Y轴的刻度,以及如何设定时间间隔为每小时,并以整点作为折点绘制折线图。 #### 三、代码解析 1. **导入必要的...

    JFreeChart折线图的生成方法

    JFreeChart折线图的生成方法 JFreeChart是一款功能强大且广泛使用的图表类库,它可以生成多种类型的图表,如饼图、柱状图、散点图、时序图、甘特图等等。今天,我们将详细介绍JFreeChart折线图的生成方法。 首先,...

    java里用JFreeChart画柱状图、折线图、雷达图

    在Java编程环境中,JFreeChart库是一个强大的工具,用于创建各种复杂的图表,包括柱状图、折线图和雷达图。这些图表对于数据可视化和数据分析非常有用,可以帮助开发者直观地展示大量信息。以下是对给定文件中每个...

    JfreeChart画双Y轴折线图

    在本篇博客中,"JfreeChart画双Y轴折线图"的主题,将探讨如何使用JFreeChart库来创建具有两个独立Y轴的折线图,这对于显示不同尺度或单位的数据对比非常有用。 首先,我们需要了解JFreeChart的基本结构。JFreeChart...

Global site tag (gtag.js) - Google Analytics