导航:首页 > 操作系统 > linuxjfreechart乱码

linuxjfreechart乱码

发布时间:2022-08-27 22:05:26

‘壹’ jfreechart 出现乱码问题

最主要的是设置font

jfreechart中文乱码问题解决方案(转)
柱状图(CategoryPlot):
CategoryPlot plot=chart.getCategoryPlot();//获取图表区域对象
CategoryAxis domainAxis=plot.getDomainAxis();
//水平底部列表
domainAxis.setLabelFont(new Font("黑体",Font.BOLD,14));
//水平底部标题
domainAxis.setTickLabelFont(new Font("宋体",Font.BOLD,12));
//垂直标题
ValueAxis rangeAxis=plot.getRangeAxis();//获取柱状
rangeAxis.setLabelFont(new Font("黑体",Font.BOLD,15));
chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));
饼图(PiePlot):
JFreeChart chart = ChartFactory.createPieChart3D("IT行业职业分布图", dataset, true, false, false);
chart.getTitle().setFont(new Font("黑体",Font.BOLD,20));//设置标题字体
PiePlot piePlot= (PiePlot) chart.getPlot();//获取图表区域对象
piePlot.setLabelFont(new Font("黑体",Font.BOLD,10));
chart.getLegend().setItemFont(new Font("黑体",Font.BOLD,10));
时序图(TimeSeries)
XYPlot plot = (XYPlot) chart.getPlot();
//纵轴字体
plot.getRangeAxis().setLabelFont(new Font("宋体", Font.BOLD, 15));
//横轴框里的标题字体
chart.getLegend().setItemFont(new Font("宋体", Font.ITALIC, 15));
//横轴列表字体
plot.getDomainAxis().setTickLabelFont(new Font("新宋体", 1, 15));
//横轴小标题字体
plot.getDomainAxis().setLabelFont(new Font("新宋体", 1, 12));
折线图
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 15));
chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));
CategoryAxis domainAxis = plot.getDomainAxis();
/*------设置X轴坐标上的文字-----------*/
domainAxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 11));
/*------设置X轴的标题文字------------*/
domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));
NumberAxis numberaxis = (NumberAxis) plot.getRangeAxis();
/*------设置Y轴坐标上的文字-----------*/
numberaxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 12));

/*------设置Y轴的标题文字------------*/
numberaxis.setLabelFont(new Font("黑体", Font.PLAIN, 12))

‘贰’ 关于jfreechart的中文乱码问题

这个问题我前几天遇到过,已经解决。
随便找一个项目,把下面的**.jsp放在根目录下,然后启动服务器,打开**.jsp
注释部分是生成一个窗口。

问题原因在于要设置字体
我的jar包也是jfreechart1.0.13。乱码问题不是jar包问题。

<%@ page contentType="text/html;charset=UTF-8"%>
<%@ page import="java.util.Locale,org.jfree.chart.*,org.jfree.chart.title.TextTitle,org.jfree.chart.ChartFrame,org.jfree.chart.plot.PiePlot, org.jfree.data.general.DefaultPieDataset, org.jfree.chart.servlet.ServletUtilities, java.awt.*"%>
<% //设置数据集
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("初中高级程序员", 0.55);
dataset.setValue("项目经理", 0.1);
dataset.setValue("系统分析师", 0.1);
dataset.setValue("软件架构师", 0.1);
dataset.setValue("其他", 0.2); //通过工厂类生成JFreeChart对象
JFreeChart chart = ChartFactory.createPieChart3D("IT行业职业分布图", dataset, true, true,false);
PiePlot pieplot = (PiePlot) chart.getPlot(); pieplot.setLabelFont(new Font("宋体", 0, 12));
//没有数据的时候显示的内容
pieplot.setNoDataMessage("无数据显示");
pieplot.setCircular(false);
pieplot.setLabelGap(0.02D);
TextTitle txtTitle = null;
txtTitle = chart.getTitle();

Font font = new Font("宋体", Font.BOLD, 16);
txtTitle.setFont(font);
chart.getLegend().setItemFont(font);
// ChartFrame cf=new ChartFrame("杭州顺源管理图",chart);
// cf.pack();
// cf.setFont(font);
// cf.setVisible(true);

String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, null, session);
String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename; %>
<img src="<%= graphURL %>" width=500 height=300 border=0 usemap="#<%= filename %>">

‘叁’ JFreeChart 中文乱码问题

import java.awt.Font;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.plot.PiePlot;
import org.jfree.chart.title.LegendTitle;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.general.DefaultPieDataset;

public class Test3 {
public Test3() {
}

public static void main(String[] args) {
DefaultPieDataset dpd = new DefaultPieDataset();
dpd.setValue("管理人员", 25);
dpd.setValue("市场人员", 25);
dpd.setValue("开发人员", 45);
dpd.setValue("其他人员", 5);

// Create JFreeChart object
// 参数可以查看源码

JFreeChart chart = ChartFactory.createPieChart("公司组织架构图", dpd, true,
true, false);
Font font = new Font("SimSun", 10, 20);
TextTitle txtTitle = null;
txtTitle = chart.getTitle();
txtTitle.setFont(font);
PiePlot pieplot = (PiePlot)chart.getPlot();
pieplot.setLabelFont(font);
chart.getLegend().setItemFont(font);
ChartFrame pieFrame = new ChartFrame("公司组织架构图", chart);
pieFrame.pack();
pieFrame.setFont(font);
pieFrame.setVisible(true);
}
}

‘肆’ jfreechart 中文乱码!请高手解答

1.在你的代码里面加入日志,将取到的信息打印出来,看看是不是乱码。
2.如果上面没出现乱码,那就可能是设置的response的charset和页面content-type的不一致,此外,还要检查下页面文件的编码。
3.你用的什么编码?页面的和数据库的。
你什么编码设置都没说明,很难想象问题出在哪的。

‘伍’ JfreeChart中文乱码如何解决

两种方案根据需要选择:
第一:

可以设置字体来修正乱码,比如要修改标题

Java codechart.setTitle(new TextTitle("修正字体", new Font("黑体", Font.BOLD, 20)));

至于要缩放,据我所知在网页上是不支持的,要改变横轴方向的话,需要取得横轴对象后,调用该对象的

Java codesetCategoryLabelPositions(CategoryLabelPositions.UP_45)

方法来设定,这里是产生旋转45度角,不知道说清楚没,试试吧!

第二:
Font font = new Font("SimSun",10,20);
TextTitle tt = chart.getTitle();
tt.setFont(font);

PiePlot pieplot = (PiePlot)chart.getPlot();
pieplot.setLabelFont(font);
chart.getLegend().setItemFont(font);
设置字体就可以啊!

‘陆’ Jfreechart中文乱码

你试一下下面的方案看有效不?jfreechart对中文的支持部是很好,我开始做的时候也有乱码,下面的方案是在java上运行可以的。。。
jfreechart中文乱码问题解决方案(转)
柱状图(CategoryPlot):
CategoryPlot plot=chart.getCategoryPlot();//获取图表区域对象
CategoryAxis domainAxis=plot.getDomainAxis();
//水平底部列表
domainAxis.setLabelFont(new Font("黑体",Font.BOLD,14));
//水平底部标题
domainAxis.setTickLabelFont(new Font("宋体",Font.BOLD,12));
//垂直标题
ValueAxis rangeAxis=plot.getRangeAxis();//获取柱状
rangeAxis.setLabelFont(new Font("黑体",Font.BOLD,15));
chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));

饼图(PiePlot):
JFreeChart chart = ChartFactory.createPieChart3D("IT行业职业分布图", dataset, true, false, false);
chart.getTitle().setFont(new Font("黑体",Font.BOLD,20));//设置标题字体
PiePlot piePlot= (PiePlot) chart.getPlot();//获取图表区域对象
piePlot.setLabelFont(new Font("黑体",Font.BOLD,10));
chart.getLegend().setItemFont(new Font("黑体",Font.BOLD,10));

时序图(TimeSeries)
XYPlot plot = (XYPlot) chart.getPlot();
//纵轴字体
plot.getRangeAxis().setLabelFont(new Font("宋体", Font.BOLD, 15));
//横轴框里的标题字体
chart.getLegend().setItemFont(new Font("宋体", Font.ITALIC, 15));
//横轴列表字体
plot.getDomainAxis().setTickLabelFont(new Font("新宋体", 1, 15));
//横轴小标题字体
plot.getDomainAxis().setLabelFont(new Font("新宋体", 1, 12));

折线图
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 15));
chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));
CategoryAxis domainAxis = plot.getDomainAxis();
/*------设置X轴坐标上的文字-----------*/
domainAxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 11));
/*------设置X轴的标题文字------------*/
domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));
NumberAxis numberaxis = (NumberAxis) plot.getRangeAxis();
/*------设置Y轴坐标上的文字-----------*/
numberaxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 12));
/*------设置Y轴的标题文字------------*/
numberaxis.setLabelFont(new Font("黑体", Font.PLAIN, 12))

‘柒’ JFREECHART 生成的图片中的汉字是乱码

因为服务器的默认字体和你本机的不同。

‘捌’ jfreechart,windows下中文显示正常,linux下乱码.在线等。。。急急急!!

初入linux的程序员们,经常会受到乱码的问候。可谓“始乱终弃”。因为乱码,并且最终放弃了linux的不在少数。好吧,言归正传,先看看各类乱码是怎么形成的。

中文字符乱码

这种情况一般是安装了中文控制端,但没有启用中文应用造成的。只需要启动相应软件即可,如zhcon。或者是启用了相应软件,但字符集不对,需设置相应字符集,例如export LANG=zh_CN.UTF-8

ORACLE安装界面乱码

虽说ORACLE支持多国语言,会根据环境变量自动选择字符集,但中文安装好像还有问题,不过10.2以后的版本好像没有该问题了,具体可以执行命令export LANG=en_US来设置为英文字符集环境

英文字符乱码

一般该字符乱码多出现在cat了二进制的文件时,因为二进制文件中多有控制码,会导致终端界面乱码,通常解决方法是用reset终端复位命令解决问题

其他伪终端乱码

有时是通过SSH进入远程LINUX服务器时,cat一个core文件,并且用reset命令都不能成功,怎么办?很简单,看以下试验,首先cat一个python编译文件

oracle@linux-suse:~> cat fibo.pyc
m?
{?鲱c@sd
Zd
ZdS(cCs:d\}}x'||jo|G|||}}qWdS(Nii(ii(tatbtn(RRR((tfibo.pytfibs

cCsIg}d\}}x0||jo"|i||||}}qW|S(Nii(ii(tresultRRRtappend(RRRR((Rtfib2 s
N(RR(RR((Rt?s oracle@linux-suse:~> VT102VT102
\-bash: VT102VT102: command not found
oracle@linux-suse:~>
在SSH终端上看到是的乱码,提示符都是乱的,可以用以下命令恢复

oracle@linux-suse:~> tput sgr0
乱码问题产生的原因是SSH的问题,因为在其他终端下,cat用样一个文件,不会产生乱码,于是试验乱码产生的原因

oracle@linux-suse:~> ^N
只要用ctrl+v,ctrl+n就使用屏幕乱码,当然恢复后再试验

oracle@linux-suse:~> echo -e '\xe'
屏幕再次乱码,好,再恢复

oracle@linux-suse:~> echo -e '\xf'
以上是需要盲打的,因为屏上看到的是乱码,最终问题产生的原因是十六进制字符E产生的,解决也很简单,十六进制字符F即可。

我在蓝色理想里看到的 希望帮到你

‘玖’ 为什么jfreechart 会特殊字符乱码呢

因为一般JS编码是UTF-8的,所以在JS与后台或JS交互的时候需要
new String(a.getByte(),"gbk");类似这样把参数转码

阅读全文

与linuxjfreechart乱码相关的资料

热点内容
围棋排名算法 浏览:960
zigbee加密算法 浏览:461
柏杨版资治通鉴pdf 浏览:393
事业编程序员下班时间 浏览:8
linux中命令大全 浏览:36
pic单片机学习网站 浏览:163
843除6的算法 浏览:377
arduino编程视频 浏览:744
pdf背景绿色 浏览:612
记事本dos命令 浏览:274
服务器如何搭建多个节点 浏览:326
acx算法 浏览:258
幽冥诡匠漫画全集用什么app可以看 浏览:1003
租用服务器为什么越来越慢 浏览:962
算法创新就业方向 浏览:425
算法最优解作者 浏览:870
通达信红绿宝塔线指标源码 浏览:669
app是什么东西合法吗 浏览:234
怎么锁app视频教程 浏览:843
迅捷pdf注册码生成器 浏览:750