效果图
支持的语言
目前支持 简体中文,英文,繁體中文
SetOption 设置语言
var option=
{
Type:'历史K线图',
......
Language:'EN', //英文 'EN' 简体中文:'CN' 繁体中文:"TC"
.........
}
Language 语言配置项 EN=英文,CN=简体中文,TC=繁体中文
SetLanguage 动态设置语言
通过函数SetLanguage(language) 可以动态设置语言
language 设置的语言 EN=英文,CN=简体中文,TC=繁体中文
chart.SetLanguage('EN');
多语言实现设计
所有的语言对应关系是保存在一个map表中, 在输出文字的时候,通过这个map表找到对应的语言的文字显示的画布上。
多语言文本查询类 JSChartLocalization.
后续如果需要增加其他语言,
- JSCHART_LANGUAGE_ID 在这个枚举中增加一个新的语言ID
- JSChartLocalization中的TextResource 增加对应的文字,并且在GetText()绑定对应关系
var JSCHART_LANGUAGE_ID=
{
LANGUAGE_CHINESE_ID:0, //简体中文 CN
LANGUAGE_ENGLISH_ID:1, //英文 EN
LANGUAGE_TRADITIONAL_CHINESE_ID:2, //繁体中文 TC
};
function JSChartLocalization()
{
this.TextResource=new Map([
//内部tooltip
['Tooltip-Open', {CN:'开:', EN:'O:', TC:'開'}],
['Tooltip-High', {CN:'高:', EN:'H:', TC:'高'}],
['Tooltip-Low', {CN:'低:', EN:'L:', TC:'低'}],
['Tooltip-Close', {CN:'收:', EN:'C:', TC:'收'}],
['Tooltip-Increase', {CN:'幅:', EN:'I:', TC:'幅'}],
['Tooltip-Vol', {CN:'量:', EN:'V:', TC:'量'}],
['Tooltip-Amount', {CN:'额:', EN:'A:', TC:'額'}],
['Tooltip-AvPrice', {CN:'均:', EN:'AP:', TC:'均'}],
['Tooltip-Price', {CN:'价:', EN:'P:', TC:'價'}],
['Tooltip-Exchange', {CN:'换:', EN:'E:', TC:'換'}],
['Tooltip-Position',{CN:'持:', EN:'P:', TC:'持'}],
['DivTooltip-Open', {CN:'开盘:', EN:'Open:', TC:'開盤'}],
['DivTooltip-High', {CN:'最高:', EN:'High:', TC:'最高'}],
['DivTooltip-Low', {CN:'最低:', EN:'Low:', TC:'最低'}],
['DivTooltip-Close', {CN:'收盘:', EN:'Close:', TC:'收盤'}],
['DivTooltip-Increase', {CN:'涨幅:', EN:'Increase:', TC:'漲幅'}],
['DivTooltip-Vol', {CN:'数量:', EN:'Volume:', TC:'數量'}],
['DivTooltip-Amount', {CN:'金额:', EN:'Amount:', TC:'金額'}],
['DivTooltip-Exchange', {CN:'换手:', EN:'Exchange:', TC:'換手'}],
['DivTooltip-Position', {CN:'持仓:', EN:'Position:', TC:'持倉'}],
['DivTooltip-Price', {CN:'价格:', EN:'Open:', TC:'價格'}],
//K线动态标题
['KTitle-Open', {CN:'开:', EN:'O:', TC:'開'}],
['KTitle-High', {CN:'高:', EN:'H:', TC:'高'}],
['KTitle-Low', {CN:'低:', EN:'L:', TC:'低'}],
['KTitle-Close', {CN:'收:', EN:'C:', TC:'收'}],
['KTitle-Increase', {CN:'幅:', EN:'I:', TC:'幅'}],
['KTitle-Vol', {CN:'量:', EN:'V:', TC:'量'}],
['KTitle-Amount', {CN:'额:', EN:'A:', TC:'額'}],
['KTitle-Exchange', {CN:'换:', EN:'E:', TC:'換'}],
['KTitle-Position', {CN:'持:', EN:'P:', TC:'持'}],
['KTitle-Price', {CN:'价:', EN:'Price:', TC:'價'}],
//走势图动态标题
['MTitle-AC-Price', {CN:'匹配价:', EN:'C:', TC:'匹配價'}],
['MTitle-AC-AvPrice', {CN:'匹配均价:', EN:'C:', TC:'匹配均價'}],
['MTitle-AC-Increase', {CN:'竞价涨幅:', EN:'I:', TC:'競價漲幅'}],
['MTitle-AC-Vol', {CN:'匹配量:', EN:'V:', TC:'匹配量'}],
['MTitle-AC-NotMatchVol', {CN:'未匹配量:', EN:'NV:', TC:'未匹配量'}],
//走势图标题
['MTitle-Close', {CN:'价:', EN:'C:', TC:'價'}],
['MTitle-AvPrice', {CN:'均:', EN:'AC:', TC:'均'}],
['MTitle-Increase', {CN:'幅:', EN:'I:', TC:'幅'}],
['MTitle-Vol', {CN:'量:', EN:'V:', TC:'量'}],
['MTitle-Amount', {CN:'额:', EN:'A:', TC:'額'}],
['MTitle-Position', {CN:'持:', EN:'P:', TC:'持'}],
["MTitle-UpdateTime", {CN:"更新:", EN:"Update:", TC:"更新:"}],
//周期
['日线', {CN:'日线', EN:'1D', TC:'日綫'}],
['周线', {CN:'周线', EN:'1W', TC:'周綫'}],
['双周', {CN:'双周', EN:"2W", TC:'雙周'}],
['月线', {CN:'月线', EN:'1M', TC:'月綫'}],
["半年", {CN:'半年', EN:'HY', TC:'半年'}],
['年线', {CN:'年线', EN:'1Y', TC:'年綫'}],
['1分', {CN:'1分', EN:'1Min', TC:'1分'}],
['5分', {CN:'5分', EN:'5Min', TC:'5分'}],
['15分', {CN:'15分', EN:'15Min', TC:'15分'}],
['30分', {CN:'30分', EN:'30Min', TC:'30分'}],
['60分', {CN:'60分', EN:'60Min', TC:'60分'}],
['季线', {CN:'季线', EN:'1Q', TC:'季綫'}],
['分笔', {CN:'分笔', EN:'Tick', TC:'分筆'}],
['2小时', {CN:'2小时', EN:'2H', TC:'2小時'}],
['4小时', {CN:'4小时', EN:'4H', TC:'4小時'}],
//复权
['不复权', {CN:'不复权', EN:'No Right', TC:'不復權'}],
['前复权', {CN:'前复权', EN:'Pro Right', TC:'前復權'}],
['后复权', {CN:'后复权', EN:'Post Right', TC:'后復權'}],
//week
['日', {CN:'日', EN:'Sun.', TC:'日'}],
['一', {CN:'一', EN:'Mon.', TC:'壹'}],
['二', {CN:'二', EN:'Tues.', TC:'貳'}],
['三', {CN:'三', EN:'Wed.', TC:'叁'}],
['四', {CN:'四', EN:'Thur.', TC:'肆'}],
['五', {CN:'五', EN:'Fri.', TC:'伍'}],
['六', {CN:'六', EN:'Sat.', TC:'陸'}],
['1月', {CN:'1月', EN:'Jan', TC:'1月'}],
['2月', {CN:'2月', EN:'Feb', TC:'2月'}],
['3月', {CN:'3月', EN:'Mar', TC:'3月'}],
['4月', {CN:'4月', EN:'Apr', TC:'4月'}],
['5月', {CN:'5月', EN:'May', TC:'5月'}],
['6月', {CN:'6月', EN:'Jun', TC:'6月'}],
['7月', {CN:'7月', EN:'Jul', TC:'7月'}],
['8月', {CN:'8月', EN:'Aug', TC:'8月'}],
['9月', {CN:'9月', EN:'Sept', TC:'9月'}],
['10月', {CN:'10月', EN:'Oct', TC:'10月'}],
['11月', {CN:'11月', EN:'Nov', TC:'11月'}],
['12月', {CN:'12月', EN:'Dec', TC:'12月'}],
['自定义分钟', {CN:'分', EN:'Min', TC:'分'}],
['自定义日线', {CN:'日', EN:'D', TC:'日'}],
['自定义秒', {CN:'秒', EN:'S', TC:'秒'}],
["MVol-Vol", {CN:"成交量", EN:"Volume", TC:'成交量'} ],
["MVol-Position", {CN:"持仓量", EN:"Position", TC:'持倉量'} ],
//深度图
["Depth-Price", {CN:"委托价", EN:"Price", TC:'委托價'}],
["Depth-Sum", {CN:"累计", EN:"Sum", TC:'累計'}]
]);
this.GetText=function(key,language)
{
var item=this.TextResource.get(key);
if (!item) return '';
switch(language)
{
case JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID:
return item.CN;
case JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID:
return item.EN;
case JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID:
return item.TC;
default:
return item.CN;
}
}
this.SetTextResource=function(key,value)
{
this.TextResource.set(key,value)
}
this.GetLanguageID=function(languageName)
{
var languageID=null;
switch(languageName)
{
case 'EN':
languageID=JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID;
break;
case 'CN':
languageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;
break;
case "TC":
languageID=JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID;
break;
default:
break;
}
return languageID;
}
};
var g_JSChartLocalization=new JSChartLocalization();
资源实例获取接口
JSChart.GetLocalization=function()
{
return g_JSChartLocalization;
}
其他资源
菜单类的资源目前不支持替换, 需要自己在外部自己做。
QQ群: 950092318
如果还有问题可以加交流QQ群: 950092318
HQChart代码地址
地址:https://github.com/jones2000/HQChart