问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java怎么生成折线图,传入月份(1,2,3)生产数量(100,200,300),然后生成一个折线图,最好是曲线图,谢

发布网友 发布时间:2022-05-02 11:06

我来回答

2个回答

热心网友 时间:2023-10-03 11:34

按照你的要求编写的折线图程序如下:生成的图片放在D盘根目录下,文件名是testline.png

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.swing.JPanel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

public class LineCharts extends ApplicationFrame {
public LineCharts(String s) {
super(s);
setContentPane(createDemoLine());
}

public static void main(String[] args) {
LineCharts fjc = new LineCharts("折线图");
fjc.pack();
RefineryUtilities.centerFrameOnScreen(fjc);
fjc.setVisible(true);

}
// 生成显示图表的面板 public static JPanel createDemoLine() {
JFreeChart jfreechart = createChart(createDataset());
saveAsFile(jfreechart, "D://testline.png", 500, 300);
return new ChartPanel(jfreechart);
}

// 生成图表主对象JFreeChart public static JFreeChart createChart(DefaultCategoryDataset linedataset) {
//定义图表对象
JFreeChart chart = ChartFactory.createLineChart("LineChart", // chart title
"Time", // domain axis label
"Quantity", // range axis label
linedataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips
false // urls
);
CategoryPlot plot = chart.getCategoryPlot();
// customise the range axis...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
rangeAxis.setUpperMargin(1);
rangeAxis.setLabelAngle(Math.PI / 2.0);

return chart; }
//生成数据 public static DefaultCategoryDataset createDataset() {
DefaultCategoryDataset linedataset = new DefaultCategoryDataset();
// 各曲线名称
String series1 = "car";

// 横轴名称(列名称)
String type1 = "Jan";
String type2 = "Feb";
String type3 = "Mar";

linedataset.addValue(100, series1, type1); linedataset.addValue(200, series1, type2);
linedataset.addValue(300, series1, type3);

return linedataset; }
public static void saveAsFile(JFreeChart chart, String outputPath,
int weight, int height) {
FileOutputStream out = null;
try {
File outFile = new File(outputPath);
if (!outFile.getParentFile().exists()) {
outFile.getParentFile().mkdirs();
}
out = new FileOutputStream(outputPath);
// 保存为PNG文件
ChartUtilities.writeChartAsPNG(out, chart, 600, 350);
out.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
// do nothing
}
}
}
}
}

热心网友 时间:2023-10-03 11:34

有一个jfreeChart 你可以去网上找找

热心网友 时间:2023-10-03 11:34

按照你的要求编写的折线图程序如下:生成的图片放在D盘根目录下,文件名是testline.png

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.swing.JPanel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

public class LineCharts extends ApplicationFrame {
public LineCharts(String s) {
super(s);
setContentPane(createDemoLine());
}

public static void main(String[] args) {
LineCharts fjc = new LineCharts("折线图");
fjc.pack();
RefineryUtilities.centerFrameOnScreen(fjc);
fjc.setVisible(true);

}
// 生成显示图表的面板 public static JPanel createDemoLine() {
JFreeChart jfreechart = createChart(createDataset());
saveAsFile(jfreechart, "D://testline.png", 500, 300);
return new ChartPanel(jfreechart);
}

// 生成图表主对象JFreeChart public static JFreeChart createChart(DefaultCategoryDataset linedataset) {
//定义图表对象
JFreeChart chart = ChartFactory.createLineChart("LineChart", // chart title
"Time", // domain axis label
"Quantity", // range axis label
linedataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips
false // urls
);
CategoryPlot plot = chart.getCategoryPlot();
// customise the range axis...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
rangeAxis.setUpperMargin(1);
rangeAxis.setLabelAngle(Math.PI / 2.0);

return chart; }
//生成数据 public static DefaultCategoryDataset createDataset() {
DefaultCategoryDataset linedataset = new DefaultCategoryDataset();
// 各曲线名称
String series1 = "car";

// 横轴名称(列名称)
String type1 = "Jan";
String type2 = "Feb";
String type3 = "Mar";

linedataset.addValue(100, series1, type1); linedataset.addValue(200, series1, type2);
linedataset.addValue(300, series1, type3);

return linedataset; }
public static void saveAsFile(JFreeChart chart, String outputPath,
int weight, int height) {
FileOutputStream out = null;
try {
File outFile = new File(outputPath);
if (!outFile.getParentFile().exists()) {
outFile.getParentFile().mkdirs();
}
out = new FileOutputStream(outputPath);
// 保存为PNG文件
ChartUtilities.writeChartAsPNG(out, chart, 600, 350);
out.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
// do nothing
}
}
}
}
}

热心网友 时间:2023-10-03 11:34

有一个jfreeChart 你可以去网上找找
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
浙江有哪些三加二的学校 浙江公办3+2专科学校排名 老师们给看看柿子叶子什么病 51漫画vip兑换码 怎样获得51漫画vip兑换码? 51兑换码怎么用 哪个漫画软件好用一些啊,求推荐。 十万平米的楼房地暖管要用多少 物业管理条例里面有写的,10万平米以下,按建筑面积的千份之四计算,超过... 二级建造师十万平米怎么理解 JAVA导出EXCEL同时把表中的数据自动生成折线图用什么技术可以实现? JAVA如何读取excel里的数据做出折线图 javascript中是什么意思 javascript中"" 和'的区别 在javascript中==和===的区别 JavaScript中==和===之间的区别? 爱玛电动车颠的开开电源不走显示屏也不亮? 电动车有电,拧转把不走,该如何检修? 电动车有电,可是拧闸就是不走是什么原因,有的时候就走 投币洗衣机怎么设置时间和投币 爱玛电动车突然不走,显示灯是亮着的,也确定车子有电的,是怎么回事啊? 商用洗衣机 TCL商用洗衣机的功 能 商用洗衣机中间会换水洗第二遍么 蛋糕在冰箱里冷冻能放多久? 戴眼镜压的鼻梁骨那里很痛。。 志愿者四大特征是什么? 眼镜压的鼻梁能恢复吗 简述系统集成服务器四大特性 培训计划书. ...的显卡是索泰960,特别热因为底下的两个风扇都不转了,是风扇坏了么... GTX960 七彩虹显卡我开机风扇转,之后就不转动,玩游戏时候也转,这样正常... 我的索泰GTX960霹雳版温度到了·65度他都不转怎么回事呢 判断Sql语句查询的结果有无数据最快的方法 求视频压缩非常小且超高清的软件工具 说能给我个mp4/rm转换专家破解版的 如图,下面第一张是解压后的界面,这种MP4文件被加密了如何破解?有破解的方法、软件吗? 工业一体机、触控一体机的品牌都有哪些?哪个相对比较好? honor20i屏幕突然出现了花屏,不受控置,换屏需要提前联系好网点让他找厂家发内屏吗? 求一个免费的MP4视屏压缩工具 就是把视屏大小 变小 对画质影响越小越好 压缩后还要有 原来的字幕 谢谢 自主招生和自考是一回事吗? As a result 同义词是什麼 如此的近义词是什么呢? 求thus的用法 关于thus的用法 Because 这个词不能用在句首吗?有什么同义词?so 这个词有什么同义词?写... 如此的近义词是什么? neutralize与neutralise是一个单词吗 英语近义词辨析 有本英语近义词词典,好像叫21st Roget Random Thesaurus