JFreeChar亂碼問題

2021-08-30 18:45:54 字數 1999 閱讀 4694

jfreechart中文亂碼的解決方法

使用jfreechart繪製圖表的時候,如果使用預設的字型會導致圖示中的漢字顯示為亂碼。解決方法如下:

jfreechart是使用者使用該庫提供的各類圖示的統一介面,jfreechart主要由三個部分構成:title(標題),legend(圖釋),plot(圖表主體)。三個部分設定字型的方法分別如下:

1.title

view plaincopy to clipboardprint?

texttitle texttitle = freechart.gettitle();  

texttitle.setfont(new font("宋體",font.bold,20)); 

texttitle texttitle = freechart.gettitle();

texttitle.setfont(new font("宋體",font.bold,20));

2.legent

view plaincopy to clipboardprint?

legendtitle legend = freechart.getlegend();  

if (legend!=null)  

legendtitle legend = freechart.getlegend();

if (legend!=null)

3.plot

對於不同型別的圖表對應plot的不同的實現類,設定字型的方法也不完全相同。

對於使用categoryplot的圖表(如柱狀圖):

view plaincopy to clipboardprint?

categoryplot plot = (categoryplot)freechart.getplot();  

categoryaxis domainaxis = plot.getdomainaxis();//(柱狀圖的x軸)  

domainaxis.setticklabelfont(new font("宋體",font.bold,20));//設定x軸座標上的字型  

domainaxis.setlabelfont(new font("宋體",font.bold,20));//設定x軸上的標題的字型    

valueaxis valueaxis = plot.getrangeaxis();//(柱狀圖的y軸)  

valueaxis.setticklabelfont(new font("宋體",font.bold,20));//設定y軸座標上的字型  

valueaxis.setlabelfont(new font("宋體",font.bold,20));//設定y軸座標上的標題的字型 

categoryplot plot = (categoryplot)freechart.getplot();

categoryaxis domainaxis = plot.getdomainaxis();//(柱狀圖的x軸)

domainaxis.setticklabelfont(new font("宋體",font.bold,20));//設定x軸座標上的字型

domainaxis.setlabelfont(new font("宋體",font.bold,20));//設定x軸上的標題的字型 

valueaxis valueaxis = plot.getrangeaxis();//(柱狀圖的y軸)

valueaxis.setticklabelfont(new font("宋體",font.bold,20));//設定y軸座標上的字型

valueaxis.setlabelfont(new font("宋體",font.bold,20));//設定y軸座標上的標題的字型

對於使用pieplot的圖示(如餅狀圖):

view plaincopy to clipboardprint?

pieplot plot = (pieplot)freechart.getplot();  

plot.setlabelfont(new font("宋體",font.bold,15)); 

亂碼問題 Qt中文亂碼問題

接觸了qt,由於習慣中vs,如果使用vs寫qt 剛接觸很快就發現有中文亂碼問題,我的解決方法如下 新建乙個標頭檔案,比如qtchcharset.h,標頭檔案中內容如下 pragma once ifdef q os win q os win 新增後支援gb2312,utf 8 bom,unicode ...

中午亂碼 html亂碼問題

亂碼問題的原因 計算機只識別0,1,在計算機中的任何內容最終都會轉化為0,1這種二進位制編碼來儲存。如果一旦在編碼或者解碼的過程 現問題均會造成亂碼問題。產生亂碼的根本原因 編碼和解碼所採用的字符集不同。首先了解一下基本知識 常用的字符集 ascii,ioso 8859 1,gbk,gb2312,u...

jsp亂碼問題

在jsp頁面中出現亂碼 你可以用像這樣的語句來處理,iso 8859 1是網上統一的一種編碼方式 stringname.getbytes iso 8859 1 gbk 在mysql中的亂碼 你可以在建表的時候指定字符集,形如這樣 create table cr user id integer uns...