java——>jfreechart柱状图间距问题 (*^__^*) ……

秋影阑珊 2011-11-21 07:44:34
小弟用 jfreechart 插件 做了个柱状图,用来统计,可是图做出来还有些不尽人意的地方、上网查了好多资料,还是没能解决、请用过 jfreechart 的前辈们不吝赐教~感激不尽...
问题1:柱子的间距怎么控制、也就是图中的柱子和下标没能对齐,我分析原因就是柱子的间距太大了..但是调用了一些方法都不好使、
问题2:柱子的“Z”轴(就是图中标示的那条线)的颜色没能改变成蓝色。。。
问题3:如何让横轴和纵轴有箭头呢?->
现在就发现这两个问题、研究了好久,没有进展、希望大家帮忙..谢谢、
我的代码和截图如下:


JFreeChart chart = ChartFactory.createBarChart3D("平均完整率","单位","分数",dataset,PlotOrientation.VERTICAL,false,true,false);
chart.setTitle(new TextTitle("平均完整率",new Font("黑体",Font.BOLD,18)));
//获取图表区域对象
CategoryPlot plot=chart.getCategoryPlot();
//设置图表的背景颜色
plot.setBackgroundPaint(new Color(122,197,205));
//设置图表纵向网格线颜色
plot.setDomainGridlinePaint(Color.red);
plot.setDomainGridlineStroke(new BasicStroke());
//设置图表横向网格线颜色
plot.setRangeGridlinePaint(Color.blue);
plot.setRangeGridlineStroke(new BasicStroke());
//设置柱子透明度
plot.setForegroundAlpha(1.0f);
//获取x轴
CategoryAxis domainAxis=plot.getDomainAxis();
//设置x轴标题
domainAxis.setLabelFont(new Font("黑体",Font.BOLD,14));
//设置x轴字段
//x轴竖线颜色
domainAxis.setAxisLinePaint(Color.red);
domainAxis.setTickLabelFont(new Font("宋体",Font.BOLD,12));
//同理,y轴
ValueAxis rangeAxis=plot.getRangeAxis();
rangeAxis.setLabelFont(new Font("黑体",Font.BOLD,15));
//Y轴竖线颜色
rangeAxis.setAxisLinePaint(Color.red);
//处理中文乱码问题
//domainAxis.setUpperMargin(0.3);
//domainAxis.setLowerMargin(0.3);
domainAxis.setAxisLineVisible(true);
//拿到立体属性对象
BarRenderer3D renderer=new BarRenderer3D();
//图片背景色
plot.setOutlineVisible(true);
//图边框颜色
plot.setOutlinePaint(Color.magenta);
//设置墙颜色
renderer.setWallPaint(Color.LIGHT_GRAY);
renderer.setMaximumBarWidth(0.1);
renderer.setMinimumBarLength(0.1);
renderer.setItemMargin(0.001);
domainAxis.setCategoryMargin(0.0);//横轴标签之间的距离20%
chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);
//让每个柱子上显示对应的value,并设置颜色
renderer.setItemLabelGenerator( new StandardCategoryItemLabelGenerator());
renderer.setItemLabelsVisible( true ); renderer.setItemLabelPaint(Color.white);
renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12,TextAnchor.CENTER_LEFT));
//最后将此属性给plot
plot.setRenderer(renderer);
response.setCharacterEncoding("gbk");
response.setContentType("image/png");
ChartUtilities.writeChartAsPNG(myOut, chart, 100*i, 430);
...全文
905 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zou_hailin226 2014-03-19
  • 打赏
  • 举报
回复
domainAxis.setLowerMargin(0.1); // 设置距离图片左端距离
domainAxis.setUpperMargin(0.1); //设置距离图片右端距离
虽然这个是2011年发表的,相信楼主早已经解决了,但是还是说一下我的想法 根据楼主上面发的图片


我觉得应该修改左右端距离可以解决
秋影阑珊 2011-11-24
  • 打赏
  • 举报
回复
嗯嗯、、就是一张柱状图、我的几个方面没能实现、有没有前辈、再给我看看哦...
Jlins 2011-11-21
  • 打赏
  • 举报
回复
图片各种看不见
代码转载自:https://pan.quark.cn/s/a4b39357ea24 自动驾驶是当前科技界高度关注的研究方向,其研究范畴涵盖了人工智能、计算机视觉、机器学习以及传感器融合等多个重要学科。这份题为"自动驾驶论文"的资料,无疑为人们提供了一个深入了解这一复杂系统的机会。以下是基于其标题和描述所呈现的一些关键知识点的详细阐述: 1. **自动驾驶技术**:自动驾驶指的是车辆在无需人类驾驶员参与的情况下,借助各类传感器和智能算法来感知周围环境,制定行驶路线,并执行驾驶行为。这种技术的核心宗旨在于提升交通安全性、缓解交通压力,并改善出行体验。 2. **Python编程语言**:Python是一种在数据处理和科学计算领域得到广泛应用的高级编程语言,由于其语法简洁且拥有丰富的库支持,经常被应用于自动驾驶领域的数据处理、模型构建和系统集成。 3. **源代码分析**:论文中提供的源代码可能包含了自动驾驶算法的实现细节,可能涵盖环境感知模块(包括图像处理、激光雷达数据解读)、决策模块(涉及路径规划、行为分析)、控制模块(涵盖车辆动力学建模、控制策略设计)等,这些代码可作为学习和研究自动驾驶算法的实践范例。 4. **计算机视觉**:自动驾驶系统中的计算机视觉技术主要用于识别道路标识、行人、其他车辆等,这通常涉及图像分类、目标识别和语义分割等任务,常见的技术包括卷积神经网络(CNN)、区域提议网络(RPN)、YOLO、Faster R-CNN等。 5. **机器学习**:机器学习是自动驾驶技术的核心,用于训练模型以理解和预测复杂的驾驶情境。深度学习,特别是深度强化学习,在决策制定和控制策略方面已取得显著进展。 6. **传感器融合**:自动驾驶汽车通常装备多种传...
内容概要:本文提出了一种改进的多旋翼无人机动态模拟的模块化仿真环境,基于Matlab/Simulink平台实现。该仿真环境通过模块化设计,集成了无人机的气动模型、动力系统模型、传感器模型及控制算法等多个关键子系统,能够精确模拟多旋翼无人机在复杂飞行条件下的动态响应特性。系统改进之处在于增强了模型的真实性和可扩展性,优化了仿真计算效率,并支持硬件在环(HIL)测试,便于控制算法的快速原型验证与迭代开发。该环境不仅可用于无人机飞控算法的设计与验证,也可服务于飞行器性能评估、故障诊断与容错控制等研究。; 适合人群:具备一定控制理论基础和Matlab/Simulink使用经验的高校研究生、科研机构研究人员及无人机相关领域的工程技术人员。; 使用场景及目标:①用于多旋翼无人机飞行动力学建模与仿真分析;②支持先进飞行控制算法(如PID、LQR、MPC、自适应控制等)的开发与验证;③作为教学工具帮助学生理解无人机系统构成与控制原理;④为无人机产品开发提供前期仿真测试平台,降低实飞风险与研发成本。; 阅读建议:建议读者结合Matlab/Simulink环境动手实践,逐步搭建并调试各个模块,重点关注各子系统间的接口关系与数据交互逻辑。同时可参考文中提供的仿真案例,深入理解参数设置对系统动态性能的影响,进而开展个性化功能扩展与算法创新。

81,108

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧