package cn.com.gwypx.util;
import java.awt.Color;
import java.awt.Font;
import java.awt.Paint;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.StandardChartTheme;
import org.jfree.chart.plot.DefaultDrawingSupplier;
import org.jfree.chart.plot.PieLabelLinkStyle;
import org.jfree.chart.renderer.category.StandardBarPainter;
import org.jfree.chart.renderer.xy.StandardXYBarPainter;
import org.jfree.ui.RectangleInsets;
public class ChartUtils
{
private static Font FONT = new Font("宋体", Font.PLAIN, 12);
public static Color[] CHART_COLORS = {new Color(31, 129, 188),
new Color(241, 92, 128), new Color(124, 181, 236),
new Color(102, 172, 204), new Color(102, 102, 0),
new Color(204, 153, 102), new Color(0, 153, 255),
new Color(204, 255, 255), new Color(51, 153, 153),
new Color(255, 204, 102), new Color(102, 102, 0),
new Color(204, 204, 204), new Color(204, 255, 255),
new Color(255, 204, 204), new Color(255, 255, 204),
new Color(255, 153, 204), new Color(51, 0, 0),
new Color(0, 51, 102), new Color(0, 153, 102),
new Color(153, 102, 153), new Color(102, 153, 204),
new Color(153, 204, 153), new Color(204, 204, 153),
new Color(255, 255, 153), new Color(255, 204, 153),
new Color(255, 153, 204), new Color(204, 153, 153),
new Color(204, 204, 255), new Color(204, 255, 204),
new Color(153, 204, 153), new Color(255, 204, 102)};// 颜色
/**
* 中文主题样式 解决乱码
*/
public static void setChartTheme()
{
// 设置中文主题样式 解决乱码
StandardChartTheme chartTheme = new StandardChartTheme("CN");
// 设置标题字体
chartTheme.setExtraLargeFont(FONT);
// 设置图例的字体
chartTheme.setRegularFont(FONT);
// 设置轴向的字体
chartTheme.setLargeFont(FONT);
chartTheme.setSmallFont(FONT);
chartTheme.setTitlePaint(new Color(51, 51, 51));
chartTheme.setSubtitlePaint(new Color(85, 85, 85));
chartTheme.setLegendBackgroundPaint(Color.WHITE);// 设置标注
chartTheme.setLegendItemPaint(Color.BLACK);//
chartTheme.setChartBackgroundPaint(Color.WHITE);
// 绘制颜色绘制颜色.轮廓供应商
// paintSequence,outlinePaintSequence,strokeSequence,outlineStrokeSequence,shapeSequence
Paint[] OUTLINE_PAINT_SEQUENCE = new Paint[]{Color.WHITE};
// 绘制器颜色源
DefaultDrawingSupplier drawingSupplier = new DefaultDrawingSupplier(
CHART_COLORS, CHART_COLORS, OUTLINE_PAINT_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_STROKE_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_OUTLINE_STROKE_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_SHAPE_SEQUENCE);
chartTheme.setDrawingSupplier(drawingSupplier);
chartTheme.setPlotBackgroundPaint(Color.WHITE);// 绘制区域
chartTheme.setPlotOutlinePaint(Color.WHITE);// 绘制区域外边框
chartTheme.setLabelLinkPaint(new Color(8, 55, 114));// 链接标签颜色
chartTheme.setLabelLinkStyle(PieLabelLinkStyle.CUBIC_CURVE);
chartTheme.setAxisOffset(new RectangleInsets(5, 12, 5, 12));
chartTheme.setDomainGridlinePaint(new Color(192, 208, 224));// X坐标轴垂直网格颜色
chartTheme.setRangeGridlinePaint(new Color(192, 192, 192));// Y坐标轴水平网格颜色
chartTheme.setBaselinePaint(Color.WHITE);
chartTheme.setCrosshairPaint(Color.BLUE);// 不确定含义
chartTheme.setAxisLabelPaint(new Color(51, 51, 51));// 坐标轴标题文字颜色
chartTheme.setTickLabelPaint(new Color(67, 67, 72));// 刻度数字
chartTheme.setBarPainter(new StandardBarPainter());// 设置柱状图渲染
chartTheme.setXYBarPainter(new StandardXYBarPainter());// XYBar 渲染
chartTheme.setItemLabelPaint(Color.black);
chartTheme.setThermometerPaint(Color.white);// 温度计
ChartFactory.setChartTheme(chartTheme);
}
/**
* 解决中文字体模糊
*/
public static void setAntiAlias(JFreeChart chart)
{
chart.setTextAntiAlias(false);
}
}创建报表对象之前调用setChartTheme(),创建报表对象之后调用setAntiAlias(JFreeChart chart)相关推荐
jfreeChart中文显示为方框解决办法 java实现jfreetree折线图的实例
目录 java 实现绘制直线图 org.jfree.ui.RectangleInsets.(DDDD)V java 实现绘制直线图 导入图中版本对应的jar包; 效果图片: 代码: package chart; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree..
JFreeChart 图表文字模糊问题的有效解决方法
JFreeChart 文字模糊问题不令人满意,网上有提到用修改字体的方式来改善,感觉还是效果不怎么样,所以继续测试,找到了比较满意的解决方法下面这个图是默认情况下显示的字体下面这个是改成黑体字候的显示情况可以看到改成黑体后效果有所改善,不过还是有点模糊继续看下一张这个是修改渲染参数后的效果 可以看到文字很清晰了,实际上和PHOTOSHOP里吧文字设置成名晰是一样的。将文字的抗锯齿参数关闭。
高德地图+Three.js实战:手把手教你打造数字农场3D可视化大屏(附完整源码)
本文详细介绍了如何利用高德地图JS API与Three.js技术栈,构建一个功能强大的数字农场3D可视化大屏。文章从技术选型、架构设计出发,深入讲解了坐标对齐、图层管理、性能优化等核心工程实践,并提供了完整的模块化代码示例,旨在为智慧农业及类似场景的3D地理可视化项目提供一套可复用的解决方案。
JFreeChart中文乱码和文字模糊问题的通用解决方案
在使用JFreeChart (http://www.jfree.org/jfreechart/ )做中文的图表时,中文乱码是一个最常要处理的问题,看网上许多文章都是在JFreeChart对象上下功夫,每次都得重新设置字体,比较麻烦。其实JFreeChart为我们提供了一个通用的解
BMW Trojan 样本分析
仅用于链接已经删却但是需要方便查阅的原文http://blog.youkuaiyun.com/zirconsdu/article/details/7997470 转载请注明出处http://blog.youkuaiyun.com/zirconsdu/article/details/8153813。 一些具体数据结构和具体路径隐去。 BMW木马样本分析 摘要 2011年底和某Hunter的谈话涉及到当时新检
FPGA控制DDR读写(AXI4总线接口)
FPGA控制DDR读写
JFreeChart中文乱码、文字模糊通用解决方案
在使用JFreeChart 做中文的图表时,中文乱码是一个最常要处理的问题,看网上许多文章都是在JFreeChart对象上下功夫,每次都得重新设置字体,比较麻烦。其实JFreeChart为我们提供了一个通用的解决方案——ChartTheme 。 ChartTheme有一个默认的实现类StandardChartTheme ,该类提供了图表主题的默认实现,通过ChartFactory 默认将这一
ENVI5.6 批量处理GF-2/GF-6/GF-7:从安装到融合的完整自动化流程
本文详细介绍了ENVI5.6环境下批量处理GF-2/GF-6/GF-7卫星数据的完整自动化流程,包括环境配置、工具安装、正射校正、图像融合等关键步骤。通过实战案例和优化技巧,帮助用户高效完成高分卫星影像处理,提升工作效率。特别针对GF-6和GF-7的特殊处理要点进行了深入解析。
JFreeChart 学习笔记
目录目录 JfreeChart 的核心对象 制图对象 制图工厂对象 数据集合对象 绘图区对象 PiePlot 类 CategoryPlot 类 XYPlot 类 坐标轴对象 CategoryAxis 类 ValueAxis 类 NumberAxis 类 DateAxis 类 图片渲染对象 JFreeChart 的应用 如何获取图片 创建数据集合与JFreeChart 实例 图表相关属性的设置 JFr
MOBsf联动雷电模拟器(在docker国内库撤销后)
MobSF (全称:Mobile Security Framework,中文名:移动安全框架) 是一个自动化的移动应用程序(Android / iOS / Windows)开源测试工具,该工具采用Python开发,能够执行静态,动态和恶意软件分析。MobSF提供了很多自动化分析功能,尤其适用于Android应用。安装必备(默认已准备好)docker(kali) 现在的国内镜像源都已经下架了只能开代理下载桌面版然后给pull到本地。
SOI LDMOS器件的Sentaurus TCAD建模与关键电学特性仿真研究
本文研究了SOI LDMOS器件的TCAD建模与电学特性仿真。通过Sentaurus TCAD平台建立了单RESURF结构的SOI LDMOS模型,详细阐述了器件结构原理和RESURF耐压机制。研究采用SDE进行几何定义和掺杂配置,在Sentaurus Device中构建了完整的物理模型体系,包括迁移率、复合和碰撞电离模型。通过系统仿真提取了器件的转移特性、输出特性和击穿特性等关键参数,分析了各参数对性能的影响规律。研究结果为功率半导体器件的仿真建模提供了规范化参考,有助于优化SOI LDMOS的性能设计。
jfreechart一&二维报表导出为word&pdf&html-中文乱码和字体模糊问题(一)
jfreechart是java平台上一个开放的绘制图表的类库,完全使用java语言编写. 报表导出涉及的两个重要问题是:1.中文乱码问题.2.报表字体模糊问题. 本实例对这两个问题进行了有效的解决,同时结合第三方开源类库itext详细介绍了导出一维2D/3D的饼状图,柱状图和折线图分别到word, pdf和html文件,和导出二维2D/3D的饼状图,柱状图和折线图分别到word,pdf和ht
基于STM32的智能手环心率血氧体温监测系统(完整设计)
本文设计了一款基于STM32单片机的多功能智能手环系统,集成心率、血氧、体温实时监测功能,并支持运动数据管理与健康预警。系统采用MAX30102传感器实现心率血氧监测,DS18B20检测体温,ADXL345进行步数统计,通过OLED屏幕显示数据。研究通过低功耗硬件选型与模块化软件架构设计,实现了多参数同步采集、阈值预警及蓝牙数据传输功能。测试结果表明,系统在健康监测精度、续航能力及用户交互体验上均达到预期目标,为个人健康管理提供了实用解决方案。
JFreeChart乱码解决方法
jfreechart主要是用来动态产生各种数据图形的,可最初使用的时候大都会碰到图片中的中文乱码或是一个小方块的情况。仔细研究主要有以下2种原因:1:服务器缺少中文字体,这多发生在Hp等unix操作系统上,解决的方法就是下载可用字体库到系统中,有人也提出在Windows上产生图片在传回到Unix主机上的方法。2:软件版本问题,jfreechart-1.0.10有人说
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
霍尼韦尔SoftMaster使用说明
霍尼韦尔SoftMaster使用说明
Jfreechart字体模糊的解决方法
1.找到当前jar对应版本的jfreechart源代码. 2.全文替换所有new Font("XXXX")为new Font("宋体"). 3.重新编译,打包. 解决了,吼吼!
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
JFreeChart中文乱码和文字模糊问题的通用解决方案 | #java #chart
在使用JFreeChart (http://www.jfree.org/jfreechart/ )做中文的图表时,中文乱码是一个最常要处理的问题,看网上许多文章都是在JFreeChart对象上下功夫,每次都得重新设置字体,比较麻烦。其实JFreeChart为我们提供了一个通用的解决方案——ChartTheme 。 ChartTheme有一个默认的实现类StandardCh...
Devexpress16.2.6破解工具
Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具
Jfreechart中文API和属性详解
为什么80%的码农都做不了架构师?>>> ...
jfreeChart图表绘制介绍
需要的jar包:jfreechart-1.0.13.jar jcommon-1.0.16.jar 官网:http://www.jfree.org/index.html 目前最新版本是1.0.13 可以在官网下载demo 里面有所有类型的例子 jfreeChart对中
JFreechart生成带热点的饼图
前段时间公司要做报表开发,顺便研究了下JFreechart的简单使用,个人觉得JFreechart生成的图片效果很差,如:图像、字体模糊,缺乏动态效果,比flash相差很远。不过作为学习,跟大家交流下JFreechart的开发过程。 遇到问题: windows下图片中文显示乱码--这个主要是由于没有给中文设置字体造成的 某些linux下图...
jfreechar 中文帮助
转 [code="java"] JFreeChart类: void setAntiAlias(boolean flag) 字体模糊边界 void setBackgroundImage(Image image) 背景图片 void setBackgroundImageAlignment(int alignment) 背景图片对齐方式(参数常量在org.jfree.ui.Alig...
893



被折叠的 条评论
为什么被折叠?



