1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java jfreechart 折线图_JFreeChart在制作折线图

java jfreechart 折线图_JFreeChart在制作折线图

时间:2023-06-04 10:23:14

相关推荐

java jfreechart 折线图_JFreeChart在制作折线图

Stringsql="selectcount(id)num,DATE_FORMAT(calltime,'%Y年%m月')ym,modulenamemnfromtongjitgroupbyDATE_FORMAT(calltime,'%Y年%m月'),mn";

Listlist=getList(sql);

//绘图数据集

DefaultCategoryDatasetdataSet=newDefaultCategoryDataset();

for(Objectobj:list){

Mapmap=(Map)obj;

dataSet.setValue((Long)map.get("num"),(String)map.get("mn"),map.get("ym").toString());

}

//如果把createLineChart改为createLineChart3D就变为了3D效果的折线图

JFreeChartchart=ChartFactory.createLineChart("图表标题","X轴标题","Y轴标题",dataSet,

PlotOrientation.VERTICAL,//绘制方向

true,//显示图例

true,//采用标准生成器

false//是否生成超链接

);

chart.getTitle().setFont(titleFont);//设置标题字体

chart.getLegend().setItemFont(font);//设置图例类别字体

chart.setBackgroundPaint(bgColor);//设置背景色

//获取绘图区对象

CategoryPlotplot=chart.getCategoryPlot();

plot.setBackgroundPaint(Color.LIGHT_GRAY);//设置绘图区背景色

plot.setRangeGridlinePaint(Color.WHITE);//设置水平方向背景线颜色

plot.setRangeGridlinesVisible(true);//设置是否显示水平方向背景线,默认值为true

plot.setDomainGridlinePaint(Color.WHITE);//设置垂直方向背景线颜色

plot.setDomainGridlinesVisible(true);//设置是否显示垂直方向背景线,默认值为false

CategoryAxisdomainAxis=plot.getDomainAxis();

domainAxis.setLabelFont(font);//设置横轴字体

domainAxis.setTickLabelFont(font);//设置坐标轴标尺值字体

domainAxis.setLowerMargin(0.01);//左边距边框距离

domainAxis.setUpperMargin(0.06);//右边距边框距离,防止最后边的一个数据靠近了坐标轴。

domainAxis.setMaximumCategoryLabelLines(2);

ValueAxisrangeAxis=plot.getRangeAxis();

rangeAxis.setLabelFont(font);

rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());//Y轴显示整数

rangeAxis.setAutoRangeMinimumSize(1);//最小跨度

rangeAxis.setUpperMargin(0.18);//上边距,防止最大的一个数据靠近了坐标轴。

rangeAxis.setLowerBound(0);//最小值显示0

rangeAxis.setAutoRange(false);//不自动分配Y轴数据

rangeAxis.setTickMarkStroke(newBasicStroke(1.6f));//设置坐标标记大小

rangeAxis.setTickMarkPaint(Color.BLACK);//设置坐标标记颜色

//获取折线对象

LineAndShapeRendererrenderer=(LineAndShapeRenderer)plot.getRenderer();

BasicStrokerealLine=newBasicStroke(1.8f);//设置实线

//设置虚线

floatdashes[]={5.0f};

BasicStrokebrokenLine=newBasicStroke(2.2f,//线条粗细

BasicStroke.CAP_ROUND,//端点风格

BasicStroke.JOIN_ROUND,//折点风格

8f,dashes,0.6f);

for(inti=0;i

if(i%2==0)

renderer.setSeriesStroke(i,realLine);//利用实线绘制

else

renderer.setSeriesStroke(i,brokenLine);//利用虚线绘制

}

plot.setNoDataMessage("无对应的数据,请重新查询。");

plot.setNoDataMessageFont(titleFont);//字体的大小

plot.setNoDataMessagePaint(Color.RED);//字体颜色

平面折线图效果

3D折线图效果:

设置线条、数据点颜色和显示属性

CategoryPlot mPlot = (CategoryPlot)mChart.getPlot();

mPlot.setBackgroundPaint(Color.WHITE);// 设置绘图区背景色

mPlot.setRangeGridlinePaint(Color.BLUE);//背景底部横虚线

mPlot.setOutlinePaint(Color.RED);//边界线

mPlot.setDomainGridlinePaint(Color.BLUE); // 设置垂直方向背景线颜色

mPlot.setDomainGridlinesVisible(true); // 设置是否显示垂直方向背景线,默认值为false

LineAndShapeRenderer lasp = (LineAndShapeRenderer) mPlot.getRenderer();// 获取显示线条的对象

lasp.setBaseShapesVisible(true);// 设置拐点是否可见/是否显示拐点

lasp.setDrawOutlines(true);// 设置拐点不同用不同的形状

lasp.setUseFillPaint(true);// 设置线条是否被显示填充颜色

lasp.setBaseFillPaint(Color.BLACK); 设置拐点颜色

//lasp.setSeriesPaint(series, paint);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。