* }
*/
function prepareBoxplotData (rawData, opt) {
opt = opt || {};
var boxData = [];
var outliers = [];
var axisData = [];
var boundIQR = opt.boundIQR;
var useExtreme = boundIQR === 'none' || boundIQR === 0;
for (var i = 0; i < rawData.length; i++) {
axisData.push(i + '');
var ascList = asc(rawData[i].slice());
var Q1 = quantile(ascList, 0.25);
var Q2 = quantile(ascList, 0.5);
var Q3 = quantile(ascList, 0.75);
var min = ascList[0];
var max = ascList[ascList.length - 1];
var bound = (boundIQR == null ? 1.5 : boundIQR) * (Q3 - Q1);
var low = useExtreme ? min : Math.max(min, Q1 - bound);
var high = useExtreme ? max : Math.min(max, Q3 + bound);
boxData.push([low, Q1, Q2, Q3, high]);
for (var j = 0; j < ascList.length; j++) {
var dataItem = ascList[j];
if (dataItem < low || dataItem > high) {
var outlier = [i, dataItem];
opt.layout === 'vertical' && outlier.reverse();
outliers.push(outlier);
}
}
}
return {
boxData: boxData,
outliers: outliers,
axisData: axisData
};
}
// import { boxplotTransform } from './boxplotTransform.js';
var version = '1.0.0';
// export {boxplotTransform};
// For backward compatibility, where the namespace `dataTool` will
// be mounted on `echarts` is the extension `dataTool` is imported.
// But the old version of echarts do not have `dataTool` namespace,
// so check it before mounting.
if (echarts.dataTool) {
echarts.dataTool.version = version;
echarts.dataTool.gexf = gexf;
echarts.dataTool.prepareBoxplotData = prepareBoxplotData;
// echarts.dataTool.boxplotTransform = boxplotTransform;
}
exports.gexf = gexf;
exports.prepareBoxplotData = prepareBoxplotData;
exports.version = version;
Object.defineProperty(exports, '__esModule', { value: true });
})));
//# sourceMappingURL=dataTool.js.map
================================================
FILE: app/assets/javascripts/echarts/i18n/langAR-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Arabic.
*/
var localeObj = {
time: {
month: [
'يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو',
'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'
],
monthAbbr: [
'يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو',
'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'
],
dayOfWeek: [
'الأحد', 'الإثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'
],
dayOfWeekAbbr: [
'الأحد', 'الإثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'
]
},
legend: {
selector: {
all: 'تحديد الكل',
inverse: 'عكس التحديد'
}
},
toolbox: {
brush: {
title: {
rect: 'تحديد صندوقي',
polygon: 'تحديد حلقي',
lineX: 'تحديد أفقي',
lineY: 'تحديد عمودي',
keep: 'الاحتفاظ بالمحدد',
clear: 'إلغاء التحديد'
}
},
dataView: {
title: 'عرض البيانات',
lang: ['عرض البيانات', 'إغلاق', 'تحديث']
},
dataZoom: {
title: {
zoom: 'تكبير',
back: 'استعادة التكبير'
}
},
magicType: {
title: {
line: 'خطوط',
bar: 'أشرطة',
stack: 'تكديس',
tiled: 'مربعات'
}
},
restore: {
title: 'استعادة'
},
saveAsImage: {
title: 'حفظ كملف صورة',
lang: ['للحفظ كصورة انقر بالزر الأيمن']
}
},
series: {
typeNames: {
pie: 'رسم بياني دائري',
bar: 'رسم بياني شريطي',
line: 'رسم بياني خطي',
scatter: 'نقاط مبعثرة',
effectScatter: 'نقاط مبعثرة متموجة',
radar: 'رسم بياني راداري',
tree: 'شجرة',
treemap: 'مخطط شجري',
boxplot: 'مخطط صندوقي',
candlestick: 'مخطط شمعدان',
k: 'رسم بياني خطي من النوع K',
heatmap: 'خريطة حرارية',
map: 'خريطة',
parallel: 'خريطة الإحداثيات المتناظرة',
lines: 'خطوط',
graph: 'مخطط علائقي',
sankey: 'مخطط ثعباني',
funnel: 'مخطط هرمي',
gauge: 'مقياس',
pictorialBar: 'مخطط مصوّر',
themeRiver: 'نمط خريطة النهر',
sunburst: 'مخطط شمسي',
custom: 'مخطط مخصص',
chart: 'مخطط'
}
},
aria: {
general: {
withTitle: 'هذا رسم بياني حول "{title}".',
withoutTitle: 'هذا رسم بياني.'
},
series: {
single: {
prefix: '',
withName: ' من النوع {seriesType} اسمه {seriesName}.',
withoutName: ' من النوع {seriesType}.'
},
multiple: {
prefix: '. يتكون من {seriesCount} سلسلة.',
withName: ' الـ {seriesId} هي سلسلة من النوع {seriesType} تستعرض {seriesName}.',
withoutName: ' الـ {seriesId} هي سلسلة من النوع {seriesType}.',
separator: {
middle: '، ',
end: '. '
}
}
},
data: {
allData: 'البيانات هي كالتالي: ',
partialData: 'أول {displayCnt} عناصر هي: ',
withName: 'قيمة العنصر {name} هي {value}',
withoutName: '{value}',
separator: {
middle: '، ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langAR.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Arabic.
*/
var localeObj = {
time: {
month: [
'يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو',
'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'
],
monthAbbr: [
'يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو',
'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'
],
dayOfWeek: [
'الأحد', 'الإثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'
],
dayOfWeekAbbr: [
'الأحد', 'الإثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'
]
},
legend: {
selector: {
all: 'تحديد الكل',
inverse: 'عكس التحديد'
}
},
toolbox: {
brush: {
title: {
rect: 'تحديد صندوقي',
polygon: 'تحديد حلقي',
lineX: 'تحديد أفقي',
lineY: 'تحديد عمودي',
keep: 'الاحتفاظ بالمحدد',
clear: 'إلغاء التحديد'
}
},
dataView: {
title: 'عرض البيانات',
lang: ['عرض البيانات', 'إغلاق', 'تحديث']
},
dataZoom: {
title: {
zoom: 'تكبير',
back: 'استعادة التكبير'
}
},
magicType: {
title: {
line: 'خطوط',
bar: 'أشرطة',
stack: 'تكديس',
tiled: 'مربعات'
}
},
restore: {
title: 'استعادة'
},
saveAsImage: {
title: 'حفظ كملف صورة',
lang: ['للحفظ كصورة انقر بالزر الأيمن']
}
},
series: {
typeNames: {
pie: 'رسم بياني دائري',
bar: 'رسم بياني شريطي',
line: 'رسم بياني خطي',
scatter: 'نقاط مبعثرة',
effectScatter: 'نقاط مبعثرة متموجة',
radar: 'رسم بياني راداري',
tree: 'شجرة',
treemap: 'مخطط شجري',
boxplot: 'مخطط صندوقي',
candlestick: 'مخطط شمعدان',
k: 'رسم بياني خطي من النوع K',
heatmap: 'خريطة حرارية',
map: 'خريطة',
parallel: 'خريطة الإحداثيات المتناظرة',
lines: 'خطوط',
graph: 'مخطط علائقي',
sankey: 'مخطط ثعباني',
funnel: 'مخطط هرمي',
gauge: 'مقياس',
pictorialBar: 'مخطط مصوّر',
themeRiver: 'نمط خريطة النهر',
sunburst: 'مخطط شمسي',
custom: 'مخطط مخصص',
chart: 'مخطط'
}
},
aria: {
general: {
withTitle: 'هذا رسم بياني حول "{title}".',
withoutTitle: 'هذا رسم بياني.'
},
series: {
single: {
prefix: '',
withName: ' من النوع {seriesType} اسمه {seriesName}.',
withoutName: ' من النوع {seriesType}.'
},
multiple: {
prefix: '. يتكون من {seriesCount} سلسلة.',
withName: ' الـ {seriesId} هي سلسلة من النوع {seriesType} تستعرض {seriesName}.',
withoutName: ' الـ {seriesId} هي سلسلة من النوع {seriesType}.',
separator: {
middle: '، ',
end: '. '
}
}
},
data: {
allData: 'البيانات هي كالتالي: ',
partialData: 'أول {displayCnt} عناصر هي: ',
withName: 'قيمة العنصر {name} هي {value}',
withoutName: '{value}',
separator: {
middle: '، ',
end: '. '
}
}
}
};
echarts.registerLocale('AR', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langCS-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Czech.
*/
var localeObj = {
time: {
month: [
'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen',
'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec'
],
monthAbbr: [
'Led', 'Úno', 'Bře', 'Dub', 'Kvě', 'Čvn',
'Čvc', 'Srp', 'Zář', 'Říj', 'Lis', 'Pro'
],
dayOfWeek: [
'Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota'
],
dayOfWeekAbbr: [
'Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'
]
},
legend: {
selector: {
all: 'Vše',
inverse: 'Inv'
}
},
toolbox: {
brush: {
title: {
rect: 'Obdélníkový výběr',
polygon: 'Lasso výběr',
lineX: 'Horizontální výběr',
lineY: 'Vertikální výběr',
keep: 'Ponechat výběr',
clear: 'Zrušit výběr'
}
},
dataView: {
title: 'Data',
lang: ['Data', 'Zavřít', 'Obnovit']
},
dataZoom: {
title: {
zoom: 'Přiblížit',
back: 'Oddálit'
}
},
magicType: {
title: {
line: 'Změnit na Spojnicový graf',
bar: 'Změnit na Sloupcový graf',
stack: 'Plošný',
tiled: 'Tile'
}
},
restore: {
title: 'Obnovit'
},
saveAsImage: {
title: 'Uložit jako obrázek',
lang: ['Obrázek uložte pravým kliknutím']
}
},
series: {
typeNames: {
pie: 'Výsečový graf',
bar: 'Sloupcový graf',
line: 'Spojnicový graf',
scatter: 'XY bodový graf',
effectScatter: 'Effect XY bodový graf',
radar: 'Paprskový graf',
tree: 'Strom',
treemap: 'Stromová mapa',
boxplot: 'Krabicový graf',
candlestick: 'Burzovní graf',
k: 'K spojnicový graf',
heatmap: 'Teplotní mapa',
map: 'Mapa',
parallel: 'Rovnoběžné souřadnice',
lines: 'Spojnicový graf',
graph: 'Graf vztahů',
sankey: 'Sankeyův diagram',
funnel: 'Trychtýř (Funnel)',
gauge: 'Indikátor',
pictorialBar: 'Obrázkový sloupcový graf',
themeRiver: 'Theme River Map',
sunburst: 'Vícevrstvý prstencový graf',
custom: 'Graficu persunalizatu',
chart: 'Graf'
}
},
aria: {
general: {
withTitle: 'Toto je graf o "{title}"',
withoutTitle: 'Toto je graf'
},
series: {
single: {
prefix: '',
withName: '{seriesName} s typem {seriesType}.',
withoutName: ' s typem {seriesType}.'
},
multiple: {
prefix: '. Obsahuje {seriesCount} řad.',
withName: ' Řada {seriesId} je typu {seriesType} repreyentující {seriesName}.',
withoutName: ' Řada {seriesId} je typu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Všechna data jsou: ',
partialData: 'První {displayCnt} položky jsou: ',
withName: 'data pro {name} jsou {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langCS.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Czech.
*/
var localeObj = {
time: {
month: [
'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen',
'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec'
],
monthAbbr: [
'Led', 'Úno', 'Bře', 'Dub', 'Kvě', 'Čvn',
'Čvc', 'Srp', 'Zář', 'Říj', 'Lis', 'Pro'
],
dayOfWeek: [
'Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota'
],
dayOfWeekAbbr: [
'Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'
]
},
legend: {
selector: {
all: 'Vše',
inverse: 'Inv'
}
},
toolbox: {
brush: {
title: {
rect: 'Obdélníkový výběr',
polygon: 'Lasso výběr',
lineX: 'Horizontální výběr',
lineY: 'Vertikální výběr',
keep: 'Ponechat výběr',
clear: 'Zrušit výběr'
}
},
dataView: {
title: 'Data',
lang: ['Data', 'Zavřít', 'Obnovit']
},
dataZoom: {
title: {
zoom: 'Přiblížit',
back: 'Oddálit'
}
},
magicType: {
title: {
line: 'Změnit na Spojnicový graf',
bar: 'Změnit na Sloupcový graf',
stack: 'Plošný',
tiled: 'Tile'
}
},
restore: {
title: 'Obnovit'
},
saveAsImage: {
title: 'Uložit jako obrázek',
lang: ['Obrázek uložte pravým kliknutím']
}
},
series: {
typeNames: {
pie: 'Výsečový graf',
bar: 'Sloupcový graf',
line: 'Spojnicový graf',
scatter: 'XY bodový graf',
effectScatter: 'Effect XY bodový graf',
radar: 'Paprskový graf',
tree: 'Strom',
treemap: 'Stromová mapa',
boxplot: 'Krabicový graf',
candlestick: 'Burzovní graf',
k: 'K spojnicový graf',
heatmap: 'Teplotní mapa',
map: 'Mapa',
parallel: 'Rovnoběžné souřadnice',
lines: 'Spojnicový graf',
graph: 'Graf vztahů',
sankey: 'Sankeyův diagram',
funnel: 'Trychtýř (Funnel)',
gauge: 'Indikátor',
pictorialBar: 'Obrázkový sloupcový graf',
themeRiver: 'Theme River Map',
sunburst: 'Vícevrstvý prstencový graf',
custom: 'Graficu persunalizatu',
chart: 'Graf'
}
},
aria: {
general: {
withTitle: 'Toto je graf o "{title}"',
withoutTitle: 'Toto je graf'
},
series: {
single: {
prefix: '',
withName: '{seriesName} s typem {seriesType}.',
withoutName: ' s typem {seriesType}.'
},
multiple: {
prefix: '. Obsahuje {seriesCount} řad.',
withName: ' Řada {seriesId} je typu {seriesType} repreyentující {seriesName}.',
withoutName: ' Řada {seriesId} je typu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Všechna data jsou: ',
partialData: 'První {displayCnt} položky jsou: ',
withName: 'data pro {name} jsou {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('CS', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langDE-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: German.
*/
var localeObj = {
time: {
month: [
'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni',
'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'
],
monthAbbr: [
'Jan', 'Feb', 'Mrz', 'Apr', 'Mai', 'Jun',
'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'
],
dayOfWeek: [
'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'
],
dayOfWeekAbbr: [
'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'
]
},
legend: {
selector: {
all: 'Alle',
inverse: 'Invertiert'
}
},
toolbox: {
brush: {
title: {
rect: 'Box Auswahl',
polygon: 'Lasso Auswahl',
lineX: 'Horizontale Auswahl',
lineY: 'Vertikale Auswahl',
keep: 'Bereich Auswahl',
clear: 'Auswahl zurücksetzen'
}
},
dataView: {
title: 'Daten Ansicht',
lang: ['Daten Ansicht', 'Schließen', 'Aktualisieren']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom zurücksetzen'
}
},
magicType: {
title: {
line: 'Zu Liniendiagramm wechseln',
bar: 'Zu Balkendiagramm wechseln',
stack: 'Stapel',
tiled: 'Kachel'
}
},
restore: {
title: 'Wiederherstellen'
},
saveAsImage: {
title: 'Als Bild speichern',
lang: ['Rechtsklick zum Speichern des Bildes']
}
},
series: {
typeNames: {
pie: 'Tortendiagramm',
bar: 'Balkendiagramm',
line: 'Liniendiagramm',
scatter: 'Streudiagramm',
effectScatter: 'Welligkeits-Streudiagramm',
radar: 'Radar-Karte',
tree: 'Baum',
treemap: 'Baumkarte',
boxplot: 'Boxplot',
candlestick: 'Kerzenständer',
k: 'K Liniendiagramm',
heatmap: 'Heatmap',
map: 'Karte',
parallel: 'Parallele Koordinatenkarte',
lines: 'Liniendiagramm',
graph: 'Beziehungsgrafik',
sankey: 'Sankey-Diagramm',
funnel: 'Trichterdiagramm',
gauge: 'Meßanzeige',
pictorialBar: 'Bildlicher Balken',
themeRiver: 'Thematische Flusskarte',
sunburst: 'Sonnenausbruch',
custom: 'Graficu persunalizatu',
chart: 'Diagramm'
}
},
aria: {
general: {
withTitle: 'Dies ist ein Diagramm über "{title}"',
withoutTitle: 'Dies ist ein Diagramm'
},
series: {
single: {
prefix: '',
withName: ' mit Typ {seriesType} namens {seriesName}.',
withoutName: ' mit Typ {seriesType}.'
},
multiple: {
prefix: '. Es besteht aus {seriesCount} Serienzählung.',
withName: ' Die Serie {seriesId} ist ein {seriesType} welcher {seriesName} darstellt.',
withoutName: ' Die {seriesId}-Reihe ist ein {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Die Daten sind wie folgt: ',
partialData: 'Die ersten {displayCnt} Elemente sind: ',
withName: 'die Daten für {name} sind {value}',
withoutName: '{value}',
separator: {
middle: ',',
end: '.'
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langDE.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: German.
*/
var localeObj = {
time: {
month: [
'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni',
'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'
],
monthAbbr: [
'Jan', 'Feb', 'Mrz', 'Apr', 'Mai', 'Jun',
'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'
],
dayOfWeek: [
'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'
],
dayOfWeekAbbr: [
'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'
]
},
legend: {
selector: {
all: 'Alle',
inverse: 'Invertiert'
}
},
toolbox: {
brush: {
title: {
rect: 'Box Auswahl',
polygon: 'Lasso Auswahl',
lineX: 'Horizontale Auswahl',
lineY: 'Vertikale Auswahl',
keep: 'Bereich Auswahl',
clear: 'Auswahl zurücksetzen'
}
},
dataView: {
title: 'Daten Ansicht',
lang: ['Daten Ansicht', 'Schließen', 'Aktualisieren']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom zurücksetzen'
}
},
magicType: {
title: {
line: 'Zu Liniendiagramm wechseln',
bar: 'Zu Balkendiagramm wechseln',
stack: 'Stapel',
tiled: 'Kachel'
}
},
restore: {
title: 'Wiederherstellen'
},
saveAsImage: {
title: 'Als Bild speichern',
lang: ['Rechtsklick zum Speichern des Bildes']
}
},
series: {
typeNames: {
pie: 'Tortendiagramm',
bar: 'Balkendiagramm',
line: 'Liniendiagramm',
scatter: 'Streudiagramm',
effectScatter: 'Welligkeits-Streudiagramm',
radar: 'Radar-Karte',
tree: 'Baum',
treemap: 'Baumkarte',
boxplot: 'Boxplot',
candlestick: 'Kerzenständer',
k: 'K Liniendiagramm',
heatmap: 'Heatmap',
map: 'Karte',
parallel: 'Parallele Koordinatenkarte',
lines: 'Liniendiagramm',
graph: 'Beziehungsgrafik',
sankey: 'Sankey-Diagramm',
funnel: 'Trichterdiagramm',
gauge: 'Meßanzeige',
pictorialBar: 'Bildlicher Balken',
themeRiver: 'Thematische Flusskarte',
sunburst: 'Sonnenausbruch',
custom: 'Graficu persunalizatu',
chart: 'Diagramm'
}
},
aria: {
general: {
withTitle: 'Dies ist ein Diagramm über "{title}"',
withoutTitle: 'Dies ist ein Diagramm'
},
series: {
single: {
prefix: '',
withName: ' mit Typ {seriesType} namens {seriesName}.',
withoutName: ' mit Typ {seriesType}.'
},
multiple: {
prefix: '. Es besteht aus {seriesCount} Serienzählung.',
withName: ' Die Serie {seriesId} ist ein {seriesType} welcher {seriesName} darstellt.',
withoutName: ' Die {seriesId}-Reihe ist ein {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Die Daten sind wie folgt: ',
partialData: 'Die ersten {displayCnt} Elemente sind: ',
withName: 'die Daten für {name} sind {value}',
withoutName: '{value}',
separator: {
middle: ',',
end: '.'
}
}
}
};
echarts.registerLocale('DE', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langEL-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Greek.
*/
var localeObj = {
time: {
month: [
'Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος',
'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος'
],
monthAbbr: [
'Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν',
'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ'
],
dayOfWeek: [
'Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'
],
dayOfWeekAbbr: [
'Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'
]
},
legend: {
selector: {
all: 'Όλα',
inverse: 'Αντιστροφή'
}
},
toolbox: {
brush: {
title: {
rect: 'Επιλογή με πλαίσιο',
polygon: 'Επιλογή με λάσο',
lineX: 'Οριζόντια επιλογή',
lineY: 'Κατακόρυφη επιλογή',
keep: 'Διατήρηση επιλογών',
clear: 'Καθαρισμός επιλογών'
}
},
dataView: {
title: 'Προβολή δεδομένων',
lang: ['Προβολή δεδομένων', 'Κλείσιμο', 'Ανανένωση']
},
dataZoom: {
title: {
zoom: 'Μεγέθυνση',
back: 'Επαναφορά μεγέθυνσης'
}
},
magicType: {
title: {
line: 'Αλλαγή σε γραμμικό διάγραμμα',
bar: 'Αλλαγή σε ραβδογράφημα',
stack: 'Στοίβα',
tiled: 'Πλακίδια'
}
},
restore: {
title: 'Επαναφορά'
},
saveAsImage: {
title: 'Αποθήκευση ως εικόνα',
lang: ['Δεξί κλικ για αποθήκευση εικόνας']
}
},
series: {
typeNames: {
pie: 'Γράφημα πίτας',
bar: 'Ραβδογράφημα',
line: 'Γραμμικό διάγραμμα',
scatter: 'Διάγραμμα διασποράς',
effectScatter: 'Διάγραμμα διασποράς με κυματισμό',
radar: 'Διάγραμμα ραντάρ',
tree: 'Δενδρόγραμμα',
treemap: 'Διάγραμμα διαμερισματοποίησης',
boxplot: 'Γράφημα πλαισίου-απολήξεων',
candlestick: 'Διάγραμμα κηροπηγίων',
k: 'Διάγραμμα Κ',
heatmap: 'Θερμικός χάρτης',
map: 'Χάρτης',
parallel: 'Χάρτης παράλληλων συντεταγμένων',
lines: 'Γράφημα γραμμών',
graph: 'Γράφος σχέσεων',
sankey: 'Διάγραμμα Sankey',
funnel: 'Διάγραμμα χωνιού',
gauge: 'Διάγραμμα μετρητή',
pictorialBar: 'Εικονογραφικό ραβδογράφημα',
themeRiver: 'Γράφημα Ροής Κατηγοριών',
sunburst: 'Γράφημα Ιεραρχικών Δακτυλίων',
custom: 'Προσαρμοσμένο διάγραμμα',
chart: 'Διάγραμμα'
}
},
aria: {
general: {
withTitle: 'Αυτό είναι ένα διάγραμμα με τίτλο "{title}"',
withoutTitle: 'Αυτό είναι ένα διάγραμμα'
},
series: {
single: {
prefix: '',
withName: ' με τύπο {seriesType} και όνομα {seriesName}.',
withoutName: ' με τύπο {seriesType}.'
},
multiple: {
prefix: '. Αποτελείται από {seriesCount} σειρές δεδομένων.',
withName: ' Η σειρά {seriesId} είναι {seriesType} με όνομα {seriesName}.',
withoutName: ' Η σειρά {seriesId} είναι {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Τα δεδομένα είναι τα εξής:',
partialData: 'Τα πρώτα {displayCnt} στοιχεία είναι: ',
withName: 'τα δεδομένα για {name} είναι {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langEL.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Greek.
*/
var localeObj = {
time: {
month: [
'Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος',
'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος'
],
monthAbbr: [
'Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν',
'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ'
],
dayOfWeek: [
'Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'
],
dayOfWeekAbbr: [
'Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'
]
},
legend: {
selector: {
all: 'Όλα',
inverse: 'Αντιστροφή'
}
},
toolbox: {
brush: {
title: {
rect: 'Επιλογή με πλαίσιο',
polygon: 'Επιλογή με λάσο',
lineX: 'Οριζόντια επιλογή',
lineY: 'Κατακόρυφη επιλογή',
keep: 'Διατήρηση επιλογών',
clear: 'Καθαρισμός επιλογών'
}
},
dataView: {
title: 'Προβολή δεδομένων',
lang: ['Προβολή δεδομένων', 'Κλείσιμο', 'Ανανένωση']
},
dataZoom: {
title: {
zoom: 'Μεγέθυνση',
back: 'Επαναφορά μεγέθυνσης'
}
},
magicType: {
title: {
line: 'Αλλαγή σε γραμμικό διάγραμμα',
bar: 'Αλλαγή σε ραβδογράφημα',
stack: 'Στοίβα',
tiled: 'Πλακίδια'
}
},
restore: {
title: 'Επαναφορά'
},
saveAsImage: {
title: 'Αποθήκευση ως εικόνα',
lang: ['Δεξί κλικ για αποθήκευση εικόνας']
}
},
series: {
typeNames: {
pie: 'Γράφημα πίτας',
bar: 'Ραβδογράφημα',
line: 'Γραμμικό διάγραμμα',
scatter: 'Διάγραμμα διασποράς',
effectScatter: 'Διάγραμμα διασποράς με κυματισμό',
radar: 'Διάγραμμα ραντάρ',
tree: 'Δενδρόγραμμα',
treemap: 'Διάγραμμα διαμερισματοποίησης',
boxplot: 'Γράφημα πλαισίου-απολήξεων',
candlestick: 'Διάγραμμα κηροπηγίων',
k: 'Διάγραμμα Κ',
heatmap: 'Θερμικός χάρτης',
map: 'Χάρτης',
parallel: 'Χάρτης παράλληλων συντεταγμένων',
lines: 'Γράφημα γραμμών',
graph: 'Γράφος σχέσεων',
sankey: 'Διάγραμμα Sankey',
funnel: 'Διάγραμμα χωνιού',
gauge: 'Διάγραμμα μετρητή',
pictorialBar: 'Εικονογραφικό ραβδογράφημα',
themeRiver: 'Γράφημα Ροής Κατηγοριών',
sunburst: 'Γράφημα Ιεραρχικών Δακτυλίων',
custom: 'Προσαρμοσμένο διάγραμμα',
chart: 'Διάγραμμα'
}
},
aria: {
general: {
withTitle: 'Αυτό είναι ένα διάγραμμα με τίτλο "{title}"',
withoutTitle: 'Αυτό είναι ένα διάγραμμα'
},
series: {
single: {
prefix: '',
withName: ' με τύπο {seriesType} και όνομα {seriesName}.',
withoutName: ' με τύπο {seriesType}.'
},
multiple: {
prefix: '. Αποτελείται από {seriesCount} σειρές δεδομένων.',
withName: ' Η σειρά {seriesId} είναι {seriesType} με όνομα {seriesName}.',
withoutName: ' Η σειρά {seriesId} είναι {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Τα δεδομένα είναι τα εξής:',
partialData: 'Τα πρώτα {displayCnt} στοιχεία είναι: ',
withName: 'τα δεδομένα για {name} είναι {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('EL', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langEN-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: English.
*/
var localeObj = {
time: {
month: [
'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
],
dayOfWeek: [
'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'
],
dayOfWeekAbbr: [
'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'
]
},
legend: {
selector: {
all: 'All',
inverse: 'Inv'
}
},
toolbox: {
brush: {
title: {
rect: 'Box Select',
polygon: 'Lasso Select',
lineX: 'Horizontally Select',
lineY: 'Vertically Select',
keep: 'Keep Selections',
clear: 'Clear Selections'
}
},
dataView: {
title: 'Data View',
lang: ['Data View', 'Close', 'Refresh']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom Reset'
}
},
magicType: {
title: {
line: 'Switch to Line Chart',
bar: 'Switch to Bar Chart',
stack: 'Stack',
tiled: 'Tile'
}
},
restore: {
title: 'Restore'
},
saveAsImage: {
title: 'Save as Image',
lang: ['Right Click to Save Image']
}
},
series: {
typeNames: {
pie: 'Pie chart',
bar: 'Bar chart',
line: 'Line chart',
scatter: 'Scatter plot',
effectScatter: 'Ripple scatter plot',
radar: 'Radar chart',
tree: 'Tree',
treemap: 'Treemap',
boxplot: 'Boxplot',
candlestick: 'Candlestick',
k: 'K line chart',
heatmap: 'Heat map',
map: 'Map',
parallel: 'Parallel coordinate map',
lines: 'Line graph',
graph: 'Relationship graph',
sankey: 'Sankey diagram',
funnel: 'Funnel chart',
gauge: 'Gauge',
pictorialBar: 'Pictorial bar',
themeRiver: 'Theme River Map',
sunburst: 'Sunburst',
custom: 'Custom chart',
chart: 'Chart'
}
},
aria: {
general: {
withTitle: 'This is a chart about "{title}"',
withoutTitle: 'This is a chart'
},
series: {
single: {
prefix: '',
withName: ' with type {seriesType} named {seriesName}.',
withoutName: ' with type {seriesType}.'
},
multiple: {
prefix: '. It consists of {seriesCount} series count.',
withName: ' The {seriesId} series is a {seriesType} representing {seriesName}.',
withoutName: ' The {seriesId} series is a {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'The data is as follows: ',
partialData: 'The first {displayCnt} items are: ',
withName: 'the data for {name} is {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langEN.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: English.
*/
var localeObj = {
time: {
month: [
'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
],
dayOfWeek: [
'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'
],
dayOfWeekAbbr: [
'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'
]
},
legend: {
selector: {
all: 'All',
inverse: 'Inv'
}
},
toolbox: {
brush: {
title: {
rect: 'Box Select',
polygon: 'Lasso Select',
lineX: 'Horizontally Select',
lineY: 'Vertically Select',
keep: 'Keep Selections',
clear: 'Clear Selections'
}
},
dataView: {
title: 'Data View',
lang: ['Data View', 'Close', 'Refresh']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom Reset'
}
},
magicType: {
title: {
line: 'Switch to Line Chart',
bar: 'Switch to Bar Chart',
stack: 'Stack',
tiled: 'Tile'
}
},
restore: {
title: 'Restore'
},
saveAsImage: {
title: 'Save as Image',
lang: ['Right Click to Save Image']
}
},
series: {
typeNames: {
pie: 'Pie chart',
bar: 'Bar chart',
line: 'Line chart',
scatter: 'Scatter plot',
effectScatter: 'Ripple scatter plot',
radar: 'Radar chart',
tree: 'Tree',
treemap: 'Treemap',
boxplot: 'Boxplot',
candlestick: 'Candlestick',
k: 'K line chart',
heatmap: 'Heat map',
map: 'Map',
parallel: 'Parallel coordinate map',
lines: 'Line graph',
graph: 'Relationship graph',
sankey: 'Sankey diagram',
funnel: 'Funnel chart',
gauge: 'Gauge',
pictorialBar: 'Pictorial bar',
themeRiver: 'Theme River Map',
sunburst: 'Sunburst',
custom: 'Custom chart',
chart: 'Chart'
}
},
aria: {
general: {
withTitle: 'This is a chart about "{title}"',
withoutTitle: 'This is a chart'
},
series: {
single: {
prefix: '',
withName: ' with type {seriesType} named {seriesName}.',
withoutName: ' with type {seriesType}.'
},
multiple: {
prefix: '. It consists of {seriesCount} series count.',
withName: ' The {seriesId} series is a {seriesType} representing {seriesName}.',
withoutName: ' The {seriesId} series is a {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'The data is as follows: ',
partialData: 'The first {displayCnt} items are: ',
withName: 'the data for {name} is {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('EN', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langES-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
var localeObj = {
time: {
month: [
'enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio',
'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'
],
monthAbbr: [
'ene', 'feb', 'mar', 'abr', 'may', 'jun',
'jul', 'ago', 'sep', 'oct', 'nov', 'dic'
],
dayOfWeek: [
'domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado'
],
dayOfWeekAbbr: [
'dom', 'lun', 'mar', 'mie', 'jue', 'vie', 'sáb'
]
},
legend: {
selector: {
all: 'Todas',
inverse: 'Inversa'
}
},
toolbox: {
brush: {
title: {
rect: 'Selección de cuadro',
polygon: 'Selección de lazo',
lineX: 'Seleccionar horizontalmente',
lineY: 'Seleccionar verticalmente',
keep: 'Mantener selección',
clear: 'Despejar selecciones'
}
},
dataView: {
title: 'Ver datos',
lang: ['Ver datos', 'Cerrar', 'Actualizar']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Restablecer zoom'
}
},
magicType: {
title: {
line: 'Cambiar a gráfico de líneas',
bar: 'Cambiar a gráfico de barras',
stack: 'Pila',
tiled: 'Teja'
}
},
restore: {
title: 'Restaurar'
},
saveAsImage: {
title: 'Guardar como imagen',
lang: ['Clic derecho para guardar imagen']
}
},
series: {
typeNames: {
pie: 'Gráfico circular',
bar: 'Gráfico de barras',
line: 'Gráfico de líneas',
scatter: 'Diagrama de dispersión',
effectScatter: 'Diagrama de dispersión de ondas',
radar: 'Gráfico de radar',
tree: 'Árbol',
treemap: 'Mapa de árbol',
boxplot: 'Diagrama de caja',
candlestick: 'Gráfico de velas',
k: 'Gráfico de líneas K',
heatmap: 'Mapa de calor',
map: 'Mapa',
parallel: 'Mapa de coordenadas paralelas',
lines: 'Gráfico de líneas',
graph: 'Gráfico de relaciones',
sankey: 'Diagrama de Sankey',
funnel: 'Gráfico de embudo',
gauge: 'Medidor',
pictorialBar: 'Gráfico de barras pictóricas',
themeRiver: 'Mapa de río temático',
sunburst: 'Sunburst',
custom: 'Gráfico personalizado',
chart: 'Gráfico'
}
},
aria: {
general: {
withTitle: 'Este es un gráfico sobre “{title}”',
withoutTitle: 'Este es un gráfico'
},
series: {
single: {
prefix: '',
withName: ' con tipo {seriesType} llamado {seriesName}.',
withoutName: ' con tipo {seriesType}.'
},
multiple: {
prefix: '. Consta de {seriesCount} series.',
withName: ' La serie {seriesId} es un {seriesType} que representa {seriesName}.',
withoutName: ' La serie {seriesId} es un {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Los datos son los siguientes: ',
partialData: 'Los primeros {displayCnt} elementos son: ',
withName: 'los datos para {name} son {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langES.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var localeObj = {
time: {
month: [
'enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio',
'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'
],
monthAbbr: [
'ene', 'feb', 'mar', 'abr', 'may', 'jun',
'jul', 'ago', 'sep', 'oct', 'nov', 'dic'
],
dayOfWeek: [
'domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado'
],
dayOfWeekAbbr: [
'dom', 'lun', 'mar', 'mie', 'jue', 'vie', 'sáb'
]
},
legend: {
selector: {
all: 'Todas',
inverse: 'Inversa'
}
},
toolbox: {
brush: {
title: {
rect: 'Selección de cuadro',
polygon: 'Selección de lazo',
lineX: 'Seleccionar horizontalmente',
lineY: 'Seleccionar verticalmente',
keep: 'Mantener selección',
clear: 'Despejar selecciones'
}
},
dataView: {
title: 'Ver datos',
lang: ['Ver datos', 'Cerrar', 'Actualizar']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Restablecer zoom'
}
},
magicType: {
title: {
line: 'Cambiar a gráfico de líneas',
bar: 'Cambiar a gráfico de barras',
stack: 'Pila',
tiled: 'Teja'
}
},
restore: {
title: 'Restaurar'
},
saveAsImage: {
title: 'Guardar como imagen',
lang: ['Clic derecho para guardar imagen']
}
},
series: {
typeNames: {
pie: 'Gráfico circular',
bar: 'Gráfico de barras',
line: 'Gráfico de líneas',
scatter: 'Diagrama de dispersión',
effectScatter: 'Diagrama de dispersión de ondas',
radar: 'Gráfico de radar',
tree: 'Árbol',
treemap: 'Mapa de árbol',
boxplot: 'Diagrama de caja',
candlestick: 'Gráfico de velas',
k: 'Gráfico de líneas K',
heatmap: 'Mapa de calor',
map: 'Mapa',
parallel: 'Mapa de coordenadas paralelas',
lines: 'Gráfico de líneas',
graph: 'Gráfico de relaciones',
sankey: 'Diagrama de Sankey',
funnel: 'Gráfico de embudo',
gauge: 'Medidor',
pictorialBar: 'Gráfico de barras pictóricas',
themeRiver: 'Mapa de río temático',
sunburst: 'Sunburst',
custom: 'Gráfico personalizado',
chart: 'Gráfico'
}
},
aria: {
general: {
withTitle: 'Este es un gráfico sobre “{title}”',
withoutTitle: 'Este es un gráfico'
},
series: {
single: {
prefix: '',
withName: ' con tipo {seriesType} llamado {seriesName}.',
withoutName: ' con tipo {seriesType}.'
},
multiple: {
prefix: '. Consta de {seriesCount} series.',
withName: ' La serie {seriesId} es un {seriesType} que representa {seriesName}.',
withoutName: ' La serie {seriesId} es un {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Los datos son los siguientes: ',
partialData: 'Los primeros {displayCnt} elementos son: ',
withName: 'los datos para {name} son {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('ES', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFA-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Persian.
*/
var localeObj = {
time: {
month: [
'بهمن', 'اسفند', 'فروردین', 'اردیبهشت', 'خرداد', 'تیر',
'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی'
],
monthAbbr: [
'بهمن', 'اسفند', 'فروردین', 'اردیبهشت', 'خرداد', 'تیر',
'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی'
],
dayOfWeek: [
'یکشنبه', 'دوشنبه', 'سه شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'
],
dayOfWeekAbbr: [
'یکشنبه', 'دوشنبه', 'سه شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'
]
},
legend: {
selector: {
all: 'همه',
inverse: 'معکوس'
}
},
toolbox: {
brush: {
title: {
rect: 'چهار ضلعی',
polygon: 'چند ضلعی',
lineX: 'افقی',
lineY: 'عمودی',
keep: 'قفل کردن',
clear: 'پاک کردن'
}
},
dataView: {
title: 'نمایش دادهها',
lang: ['نمایش دادهها', 'خروج', 'بارگذاری مجدد']
},
dataZoom: {
title: {
zoom: 'بزرگنمایی',
back: 'خروج از بزرگنمایی'
}
},
magicType: {
title: {
line: 'نمودار خطی',
bar: 'نمودار میلهای',
stack: 'پشته',
tiled: 'کاشی'
}
},
restore: {
title: 'بازگردانی'
},
saveAsImage: {
title: 'ذخیره تصویر',
lang: ['راست کلیک برای ذخیره تصویر']
}
},
series: {
typeNames: {
pie: 'نمودار دایرهای',
bar: 'نمودار میلهای',
line: 'نمودار خطی',
scatter: 'طرح پراکنده',
effectScatter: 'طرح پراکنده موج دار',
radar: 'نمودار راداری',
tree: 'درخت',
treemap: 'نقشه درختی',
boxplot: 'طرح جعبه',
candlestick: 'شمعی',
k: 'نمودار خطی k',
heatmap: 'نقشه گرمایی',
map: 'نقشه',
parallel: 'نقشه مختصات موازی',
lines: 'گراف خطی',
graph: 'گراف ارتباط',
sankey: 'دیاگرام سنکی',
funnel: 'نمودار قیفی',
gauge: 'اندازه گیر',
pictorialBar: 'نوار تصویری',
themeRiver: 'نقشه رودخانه رنگی',
sunburst: 'آفتاب زدگی',
custom: 'نمودار سفارشی',
chart: 'نمودار'
}
},
aria: {
general: {
withTitle: 'نمودار مربوط به "{title}"',
withoutTitle: 'این یک نمودار است'
},
series: {
single: {
prefix: '',
withName: 'با نوع {seriesType} و نام {seriesName}.',
withoutName: 'با نوع {seriesType}.'
},
multiple: {
prefix: '. تشکیل شده از {seriesCount} سری.',
withName: '{seriesId} سری نوعی از {seriesType} به نام {seriesName} است.',
withoutName: 'سری {seriesId} نوعی از {seriesType} است.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'دیتای نمونه: ',
partialData: 'اولین عنصر از {displayCnt}:',
withName: 'مقدار {name}, {value} است',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFA.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Persian.
*/
var localeObj = {
time: {
month: [
'بهمن', 'اسفند', 'فروردین', 'اردیبهشت', 'خرداد', 'تیر',
'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی'
],
monthAbbr: [
'بهمن', 'اسفند', 'فروردین', 'اردیبهشت', 'خرداد', 'تیر',
'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی'
],
dayOfWeek: [
'یکشنبه', 'دوشنبه', 'سه شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'
],
dayOfWeekAbbr: [
'یکشنبه', 'دوشنبه', 'سه شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'
]
},
legend: {
selector: {
all: 'همه',
inverse: 'معکوس'
}
},
toolbox: {
brush: {
title: {
rect: 'چهار ضلعی',
polygon: 'چند ضلعی',
lineX: 'افقی',
lineY: 'عمودی',
keep: 'قفل کردن',
clear: 'پاک کردن'
}
},
dataView: {
title: 'نمایش دادهها',
lang: ['نمایش دادهها', 'خروج', 'بارگذاری مجدد']
},
dataZoom: {
title: {
zoom: 'بزرگنمایی',
back: 'خروج از بزرگنمایی'
}
},
magicType: {
title: {
line: 'نمودار خطی',
bar: 'نمودار میلهای',
stack: 'پشته',
tiled: 'کاشی'
}
},
restore: {
title: 'بازگردانی'
},
saveAsImage: {
title: 'ذخیره تصویر',
lang: ['راست کلیک برای ذخیره تصویر']
}
},
series: {
typeNames: {
pie: 'نمودار دایرهای',
bar: 'نمودار میلهای',
line: 'نمودار خطی',
scatter: 'طرح پراکنده',
effectScatter: 'طرح پراکنده موج دار',
radar: 'نمودار راداری',
tree: 'درخت',
treemap: 'نقشه درختی',
boxplot: 'طرح جعبه',
candlestick: 'شمعی',
k: 'نمودار خطی k',
heatmap: 'نقشه گرمایی',
map: 'نقشه',
parallel: 'نقشه مختصات موازی',
lines: 'گراف خطی',
graph: 'گراف ارتباط',
sankey: 'دیاگرام سنکی',
funnel: 'نمودار قیفی',
gauge: 'اندازه گیر',
pictorialBar: 'نوار تصویری',
themeRiver: 'نقشه رودخانه رنگی',
sunburst: 'آفتاب زدگی',
custom: 'نمودار سفارشی',
chart: 'نمودار'
}
},
aria: {
general: {
withTitle: 'نمودار مربوط به "{title}"',
withoutTitle: 'این یک نمودار است'
},
series: {
single: {
prefix: '',
withName: 'با نوع {seriesType} و نام {seriesName}.',
withoutName: 'با نوع {seriesType}.'
},
multiple: {
prefix: '. تشکیل شده از {seriesCount} سری.',
withName: '{seriesId} سری نوعی از {seriesType} به نام {seriesName} است.',
withoutName: 'سری {seriesId} نوعی از {seriesType} است.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'دیتای نمونه: ',
partialData: 'اولین عنصر از {displayCnt}:',
withName: 'مقدار {name}, {value} است',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('FA', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFI-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
var localeObj = {
time: {
month: [
'tammikuuta', 'helmikuuta', 'maaliskuuta', 'huhtikuuta', 'toukokuuta', 'kesäkuuta',
'heinäkuuta', 'elokuuta', 'syyskuuta', 'lokakuuta', 'marraskuuta', 'joulukuuta'
],
monthAbbr: [
'tammik', 'helmik', 'maalisk', 'huhtik', 'toukok', 'kesäk',
'heinäk', 'elok', 'syysk', 'lokak', 'marrask', 'jouluk'
],
dayOfWeek: [
'sunnuntaina', 'maanantaina', 'tiistaina', 'keskiviikkona', 'torstaina', 'perjantaina', 'lauantaina'
],
dayOfWeekAbbr: [
'su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'
]
},
legend: {
selector: {
all: 'Kaikki',
inverse: 'Käänteinen'
}
},
toolbox: {
brush: {
title: {
rect: 'Laatikko valinta',
polygon: 'Lasso valinta',
lineX: 'Vaakataso valinta',
lineY: 'Pysty valinta',
keep: 'Pidä valinta',
clear: 'Poista valinta'
}
},
dataView: {
title: 'Data näkymä',
lang: ['Data näkymä', 'Sulje', 'Päivitä']
},
dataZoom: {
title: {
zoom: 'Zoomaa',
back: 'Zoomin nollaus'
}
},
magicType: {
title: {
line: 'Vaihda Viivakaavioon',
bar: 'Vaihda palkkikaavioon',
stack: 'Pinoa',
tiled: 'Erottele'
}
},
restore: {
title: 'Palauta'
},
saveAsImage: {
title: 'Tallenna kuvana',
lang: ['Paina oikeaa hiirennappia tallentaaksesi kuva']
}
},
series: {
typeNames: {
pie: 'Ympyrädiagrammi',
bar: 'Pylväsdiagrammi',
line: 'Viivakaavio',
scatter: 'Pisteplot',
effectScatter: 'Ripple-pisteplot',
radar: 'Sädekaavio',
tree: 'Puu',
treemap: 'Tilastoaluekartta',
boxplot: 'Viivadiagrammi',
candlestick: 'Kynttiläkaavio',
k: 'K-linjakaavio',
heatmap: 'Lämpökartta',
map: 'Kartta',
parallel: 'Rinnakkaiskoordinaattikartta',
lines: 'Viivakuvaaja',
graph: 'Suhdekuvaaja',
sankey: 'Sankey-kaavio',
funnel: 'Suppilokaavio',
gauge: 'Mittari',
pictorialBar: 'Kuvallinen pylväs',
themeRiver: 'Teemajokikartta',
sunburst: 'Auringonkehä',
custom: 'Mukautettu kaavio',
chart: 'Kaavio'
}
},
aria: {
general: {
withTitle: 'Tämä on kaavio “{title}”',
withoutTitle: 'Tämä on kaavio'
},
series: {
single: {
prefix: '',
withName: ' tyyppiä {seriesType} nimeltään {seriesName}.',
withoutName: ' tyyppiä {seriesType}.'
},
multiple: {
prefix: '. Se koostuu {seriesCount} sarjasta.',
withName: ' Sarja {seriesId} on {seriesType}, joka edustaa {seriesName}.',
withoutName: ' Sarja {seriesId} on {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Tiedot ovat seuraavat: ',
partialData: 'Ensimmäiset {displayCnt} kohtaa ovat: ',
withName: 'tiedot nimelle {name} ovat {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFI.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var localeObj = {
time: {
month: [
'tammikuuta', 'helmikuuta', 'maaliskuuta', 'huhtikuuta', 'toukokuuta', 'kesäkuuta',
'heinäkuuta', 'elokuuta', 'syyskuuta', 'lokakuuta', 'marraskuuta', 'joulukuuta'
],
monthAbbr: [
'tammik', 'helmik', 'maalisk', 'huhtik', 'toukok', 'kesäk',
'heinäk', 'elok', 'syysk', 'lokak', 'marrask', 'jouluk'
],
dayOfWeek: [
'sunnuntaina', 'maanantaina', 'tiistaina', 'keskiviikkona', 'torstaina', 'perjantaina', 'lauantaina'
],
dayOfWeekAbbr: [
'su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'
]
},
legend: {
selector: {
all: 'Kaikki',
inverse: 'Käänteinen'
}
},
toolbox: {
brush: {
title: {
rect: 'Laatikko valinta',
polygon: 'Lasso valinta',
lineX: 'Vaakataso valinta',
lineY: 'Pysty valinta',
keep: 'Pidä valinta',
clear: 'Poista valinta'
}
},
dataView: {
title: 'Data näkymä',
lang: ['Data näkymä', 'Sulje', 'Päivitä']
},
dataZoom: {
title: {
zoom: 'Zoomaa',
back: 'Zoomin nollaus'
}
},
magicType: {
title: {
line: 'Vaihda Viivakaavioon',
bar: 'Vaihda palkkikaavioon',
stack: 'Pinoa',
tiled: 'Erottele'
}
},
restore: {
title: 'Palauta'
},
saveAsImage: {
title: 'Tallenna kuvana',
lang: ['Paina oikeaa hiirennappia tallentaaksesi kuva']
}
},
series: {
typeNames: {
pie: 'Ympyrädiagrammi',
bar: 'Pylväsdiagrammi',
line: 'Viivakaavio',
scatter: 'Pisteplot',
effectScatter: 'Ripple-pisteplot',
radar: 'Sädekaavio',
tree: 'Puu',
treemap: 'Tilastoaluekartta',
boxplot: 'Viivadiagrammi',
candlestick: 'Kynttiläkaavio',
k: 'K-linjakaavio',
heatmap: 'Lämpökartta',
map: 'Kartta',
parallel: 'Rinnakkaiskoordinaattikartta',
lines: 'Viivakuvaaja',
graph: 'Suhdekuvaaja',
sankey: 'Sankey-kaavio',
funnel: 'Suppilokaavio',
gauge: 'Mittari',
pictorialBar: 'Kuvallinen pylväs',
themeRiver: 'Teemajokikartta',
sunburst: 'Auringonkehä',
custom: 'Mukautettu kaavio',
chart: 'Kaavio'
}
},
aria: {
general: {
withTitle: 'Tämä on kaavio “{title}”',
withoutTitle: 'Tämä on kaavio'
},
series: {
single: {
prefix: '',
withName: ' tyyppiä {seriesType} nimeltään {seriesName}.',
withoutName: ' tyyppiä {seriesType}.'
},
multiple: {
prefix: '. Se koostuu {seriesCount} sarjasta.',
withName: ' Sarja {seriesId} on {seriesType}, joka edustaa {seriesName}.',
withoutName: ' Sarja {seriesId} on {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Tiedot ovat seuraavat: ',
partialData: 'Ensimmäiset {displayCnt} kohtaa ovat: ',
withName: 'tiedot nimelle {name} ovat {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('FI', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFR-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Français.
*/
var localeObj = {
time: {
month: [
'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'
],
monthAbbr: [
'Jan', 'Fév', 'Mars', 'Avr', 'Mai', 'Juin',
'Juil', 'Août', 'Sept', 'Oct', 'Nov', 'Déc'
],
dayOfWeek: [
'Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'
],
dayOfWeekAbbr: [
'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'
]
},
legend: {
selector: {
all: 'Tout',
inverse: 'Inverse'
}
},
toolbox: {
brush: {
title: {
rect: 'Sélection rectangulaire',
polygon: 'Sélection au lasso',
lineX: 'Sélectionner horizontalement',
lineY: 'Sélectionner verticalement',
keep: 'Garder la sélection',
clear: 'Effacer la sélection'
}
},
dataView: {
title: 'Visualisation des données',
lang: ['Visualisation des données', 'Fermer', 'Rafraîchir']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom Remise à zéro'
}
},
magicType: {
title: {
line: 'Changer pour Ligne',
bar: 'Changer pour Histogramme',
stack: 'Superposition',
tiled: 'Tuile'
}
},
restore: {
title: 'Restaurer'
},
saveAsImage: {
title: 'Sauvegarder l\'image',
lang: ['Clic droit pour sauvegarder l\'image']
}
},
series: {
typeNames: {
pie: 'Camembert',
bar: 'Histogramme',
line: 'Ligne',
scatter: 'Nuage de points',
effectScatter: 'Nuage de points stylisé',
radar: 'Radar',
tree: 'Arbre',
treemap: 'Treemap',
boxplot: 'Boîte à moustaches',
candlestick: 'Chandelier',
k: 'Linéaire K',
heatmap: 'Carte de fréquentation',
map: 'Carte',
parallel: 'Données parallèles',
lines: 'Lignes',
graph: 'Graphe',
sankey: 'Sankey',
funnel: 'Entonnoir',
gauge: 'Jauge',
pictorialBar: 'Barres à images',
themeRiver: 'Stream Graph',
sunburst: 'Sunburst',
custom: 'Graphique personnalisé',
chart: 'Graphique'
}
},
aria: {
general: {
withTitle: 'Cette carte est intitulée "{title}"',
withoutTitle: 'C\'est une carte'
},
series: {
single: {
prefix: '',
withName: ' Avec le type de {seriesType} qui s\'appelle {seriesName}.',
withoutName: ' Avec le type de {seriesType}.'
},
multiple: {
prefix: ' Elle comprend {seriesCount} séries.',
withName: ' La série {seriesId} représente {seriesName} de {seriesType}.',
withoutName: ' La série {seriesId} est un/une {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Les données sont: ',
partialData: 'Les premiers {displayCnt} éléments sont : ',
withName: 'Les données pour {name} sont {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langFR.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Français.
*/
var localeObj = {
time: {
month: [
'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'
],
monthAbbr: [
'Jan', 'Fév', 'Mars', 'Avr', 'Mai', 'Juin',
'Juil', 'Août', 'Sept', 'Oct', 'Nov', 'Déc'
],
dayOfWeek: [
'Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'
],
dayOfWeekAbbr: [
'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'
]
},
legend: {
selector: {
all: 'Tout',
inverse: 'Inverse'
}
},
toolbox: {
brush: {
title: {
rect: 'Sélection rectangulaire',
polygon: 'Sélection au lasso',
lineX: 'Sélectionner horizontalement',
lineY: 'Sélectionner verticalement',
keep: 'Garder la sélection',
clear: 'Effacer la sélection'
}
},
dataView: {
title: 'Visualisation des données',
lang: ['Visualisation des données', 'Fermer', 'Rafraîchir']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom Remise à zéro'
}
},
magicType: {
title: {
line: 'Changer pour Ligne',
bar: 'Changer pour Histogramme',
stack: 'Superposition',
tiled: 'Tuile'
}
},
restore: {
title: 'Restaurer'
},
saveAsImage: {
title: 'Sauvegarder l\'image',
lang: ['Clic droit pour sauvegarder l\'image']
}
},
series: {
typeNames: {
pie: 'Camembert',
bar: 'Histogramme',
line: 'Ligne',
scatter: 'Nuage de points',
effectScatter: 'Nuage de points stylisé',
radar: 'Radar',
tree: 'Arbre',
treemap: 'Treemap',
boxplot: 'Boîte à moustaches',
candlestick: 'Chandelier',
k: 'Linéaire K',
heatmap: 'Carte de fréquentation',
map: 'Carte',
parallel: 'Données parallèles',
lines: 'Lignes',
graph: 'Graphe',
sankey: 'Sankey',
funnel: 'Entonnoir',
gauge: 'Jauge',
pictorialBar: 'Barres à images',
themeRiver: 'Stream Graph',
sunburst: 'Sunburst',
custom: 'Graphique personnalisé',
chart: 'Graphique'
}
},
aria: {
general: {
withTitle: 'Cette carte est intitulée "{title}"',
withoutTitle: 'C\'est une carte'
},
series: {
single: {
prefix: '',
withName: ' Avec le type de {seriesType} qui s\'appelle {seriesName}.',
withoutName: ' Avec le type de {seriesType}.'
},
multiple: {
prefix: ' Elle comprend {seriesCount} séries.',
withName: ' La série {seriesId} représente {seriesName} de {seriesType}.',
withoutName: ' La série {seriesId} est un/une {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Les données sont: ',
partialData: 'Les premiers {displayCnt} éléments sont : ',
withName: 'Les données pour {name} sont {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('FR', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langHU-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Hungarian.
*/
var localeObj = {
time: {
month: [
'Január', 'Február', 'Március', 'Április', 'Május', 'Június',
'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún',
'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'
],
dayOfWeek: [
'Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'
],
dayOfWeekAbbr: [
'V', 'H', 'K', 'Sze', 'Csü', 'P', 'Szo'
]
},
legend: {
selector: {
all: 'Mind',
inverse: 'Inverz'
}
},
toolbox: {
brush: {
title: {
rect: 'Négyzet kijelölés',
polygon: 'Lasszó kijelölés',
lineX: 'Vízszintes kijelölés',
lineY: 'Függőleges kijelölés',
keep: 'Kijelölések megtartása',
clear: 'Kijelölések törlése'
}
},
dataView: {
title: 'Adat nézet',
lang: ['Adat nézet', 'Bezárás', 'Frissítés']
},
dataZoom: {
title: {
zoom: 'Nagyítás',
back: 'Alapméret'
}
},
magicType: {
title: {
line: 'Váltás vonal diagramra',
bar: 'Váltás oszlop diagramra',
stack: 'Halmozás',
tiled: 'Csempe'
}
},
restore: {
title: 'Visszaállítás'
},
saveAsImage: {
title: 'Mentés képként',
lang: ['Kattints jobb egérgombbal a mentéshez képként']
}
},
series: {
typeNames: {
pie: 'Oszlopdiagram',
bar: 'Sávdiagram',
line: 'Vonaldiagram',
scatter: 'Pontdiagram',
effectScatter: 'Buborékdiagram',
radar: 'Sugárdiagram',
tree: 'Fa',
treemap: 'Fatérkép',
boxplot: 'Dobozdiagram',
candlestick: 'Árfolyamdiagram',
k: 'K vonaldiagram',
heatmap: 'Hőtérkép',
map: 'Térkép',
parallel: 'Párhuzamos koordináta térkép',
lines: 'Vonalgráf',
graph: 'Kapcsolatgráf',
sankey: 'Sankey-diagram',
funnel: 'Vízesésdiagram',
gauge: 'Mérőeszköz',
pictorialBar: 'Képes sávdiagram',
themeRiver: 'Folyó témájú térkép',
sunburst: 'Napégés',
custom: 'Egyedi diagram',
chart: 'Diagram'
}
},
aria: {
general: {
withTitle: 'Ez egy diagram, amely neve "{title}"',
withoutTitle: 'Ez egy diagram'
},
series: {
single: {
prefix: '',
withName: ' típusa {seriesType} és elnevezése {seriesName}.',
withoutName: ' típusa {seriesType}.'
},
multiple: {
prefix: '. Az adatsorok száma {seriesCount}.',
withName: ' A {seriesId} számú adatsor típusa {seriesType} és neve {seriesName}.',
withoutName: ' A {seriesId} számú adatsor típusa {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Az adatok a következők: ',
partialData: 'Az első {displayCnt} elemek: ',
withName: 'a {name} nevű adat értéke {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langHU.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Hungarian.
*/
var localeObj = {
time: {
month: [
'Január', 'Február', 'Március', 'Április', 'Május', 'Június',
'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún',
'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'
],
dayOfWeek: [
'Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'
],
dayOfWeekAbbr: [
'V', 'H', 'K', 'Sze', 'Csü', 'P', 'Szo'
]
},
legend: {
selector: {
all: 'Mind',
inverse: 'Inverz'
}
},
toolbox: {
brush: {
title: {
rect: 'Négyzet kijelölés',
polygon: 'Lasszó kijelölés',
lineX: 'Vízszintes kijelölés',
lineY: 'Függőleges kijelölés',
keep: 'Kijelölések megtartása',
clear: 'Kijelölések törlése'
}
},
dataView: {
title: 'Adat nézet',
lang: ['Adat nézet', 'Bezárás', 'Frissítés']
},
dataZoom: {
title: {
zoom: 'Nagyítás',
back: 'Alapméret'
}
},
magicType: {
title: {
line: 'Váltás vonal diagramra',
bar: 'Váltás oszlop diagramra',
stack: 'Halmozás',
tiled: 'Csempe'
}
},
restore: {
title: 'Visszaállítás'
},
saveAsImage: {
title: 'Mentés képként',
lang: ['Kattints jobb egérgombbal a mentéshez képként']
}
},
series: {
typeNames: {
pie: 'Oszlopdiagram',
bar: 'Sávdiagram',
line: 'Vonaldiagram',
scatter: 'Pontdiagram',
effectScatter: 'Buborékdiagram',
radar: 'Sugárdiagram',
tree: 'Fa',
treemap: 'Fatérkép',
boxplot: 'Dobozdiagram',
candlestick: 'Árfolyamdiagram',
k: 'K vonaldiagram',
heatmap: 'Hőtérkép',
map: 'Térkép',
parallel: 'Párhuzamos koordináta térkép',
lines: 'Vonalgráf',
graph: 'Kapcsolatgráf',
sankey: 'Sankey-diagram',
funnel: 'Vízesésdiagram',
gauge: 'Mérőeszköz',
pictorialBar: 'Képes sávdiagram',
themeRiver: 'Folyó témájú térkép',
sunburst: 'Napégés',
custom: 'Egyedi diagram',
chart: 'Diagram'
}
},
aria: {
general: {
withTitle: 'Ez egy diagram, amely neve "{title}"',
withoutTitle: 'Ez egy diagram'
},
series: {
single: {
prefix: '',
withName: ' típusa {seriesType} és elnevezése {seriesName}.',
withoutName: ' típusa {seriesType}.'
},
multiple: {
prefix: '. Az adatsorok száma {seriesCount}.',
withName: ' A {seriesId} számú adatsor típusa {seriesType} és neve {seriesName}.',
withoutName: ' A {seriesId} számú adatsor típusa {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Az adatok a következők: ',
partialData: 'Az első {displayCnt} elemek: ',
withName: 'a {name} nevű adat értéke {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('HU', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langIT-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Italian.
*/
var localeObj = {
time: {
month: [
'Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno',
'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'
],
monthAbbr: [
'Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu',
'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic'
],
dayOfWeek: [
'Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'
],
dayOfWeekAbbr: [
'Dom', 'Lun', 'Mar', 'Mer', 'Gio', 'Ven', 'Sab'
]
},
legend: {
selector: {
all: 'Tutti',
inverse: 'Inverso'
}
},
toolbox: {
brush: {
title: {
rect: 'Selezione rettangolare',
polygon: 'Selezione lazo',
lineX: 'Selezione orizzontale',
lineY: 'Selezione verticale',
keep: 'Mantieni selezione',
clear: 'Rimuovi selezione'
}
},
dataView: {
title: 'Visualizzazione dati',
lang: ['Visualizzazione dati', 'Chiudi', 'Aggiorna']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Resetta zoom'
}
},
magicType: {
title: {
line: 'Passa al grafico a linee',
bar: 'Passa al grafico a barre',
stack: 'Pila',
tiled: 'Piastrella'
}
},
restore: {
title: 'Ripristina'
},
saveAsImage: {
title: 'Salva come immagine',
lang: ['Tasto destro per salvare l\'immagine']
}
},
series: {
typeNames: {
pie: 'Grafico a torta',
bar: 'Grafico a barre',
line: 'Grafico a linee',
scatter: 'Grafico a dispersione',
effectScatter: 'Ripple scatter plot',
radar: 'Grafico radar',
tree: 'Albero',
treemap: 'Treemap',
boxplot: 'Diagramma a scatola e baffi',
candlestick: 'Candlestick',
k: 'K line chart',
heatmap: 'Mappa di calore',
map: 'Mappa',
parallel: 'Grafico a coordinate parallele',
lines: 'Grafico a linee',
graph: 'Diagramma delle relazioni',
sankey: 'Diagramma di Sankey',
funnel: 'Grafico a imbuto',
gauge: 'Gauge',
pictorialBar: 'Pictorial bar',
themeRiver: 'Theme River Map',
sunburst: 'Radiale',
custom: 'Egyedi diagram',
chart: 'Grafico'
}
},
aria: {
general: {
withTitle: 'Questo è un grafico su "{title}"',
withoutTitle: 'Questo è un grafico'
},
series: {
single: {
prefix: '',
withName: ' con il tipo {seriesType} denominato {seriesName}.',
withoutName: ' con il tipo {seriesType}.'
},
multiple: {
prefix: '. È composto da {seriesCount} serie.',
withName: ' La {seriesId} serie è un {seriesType} denominata {seriesName}.',
withoutName: ' la {seriesId} serie è un {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'I dati sono come segue: ',
partialData: 'I primi {displayCnt} elementi sono: ',
withName: 'il dato per {name} è {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langIT.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Italian.
*/
var localeObj = {
time: {
month: [
'Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno',
'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'
],
monthAbbr: [
'Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu',
'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic'
],
dayOfWeek: [
'Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'
],
dayOfWeekAbbr: [
'Dom', 'Lun', 'Mar', 'Mer', 'Gio', 'Ven', 'Sab'
]
},
legend: {
selector: {
all: 'Tutti',
inverse: 'Inverso'
}
},
toolbox: {
brush: {
title: {
rect: 'Selezione rettangolare',
polygon: 'Selezione lazo',
lineX: 'Selezione orizzontale',
lineY: 'Selezione verticale',
keep: 'Mantieni selezione',
clear: 'Rimuovi selezione'
}
},
dataView: {
title: 'Visualizzazione dati',
lang: ['Visualizzazione dati', 'Chiudi', 'Aggiorna']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Resetta zoom'
}
},
magicType: {
title: {
line: 'Passa al grafico a linee',
bar: 'Passa al grafico a barre',
stack: 'Pila',
tiled: 'Piastrella'
}
},
restore: {
title: 'Ripristina'
},
saveAsImage: {
title: 'Salva come immagine',
lang: ['Tasto destro per salvare l\'immagine']
}
},
series: {
typeNames: {
pie: 'Grafico a torta',
bar: 'Grafico a barre',
line: 'Grafico a linee',
scatter: 'Grafico a dispersione',
effectScatter: 'Ripple scatter plot',
radar: 'Grafico radar',
tree: 'Albero',
treemap: 'Treemap',
boxplot: 'Diagramma a scatola e baffi',
candlestick: 'Candlestick',
k: 'K line chart',
heatmap: 'Mappa di calore',
map: 'Mappa',
parallel: 'Grafico a coordinate parallele',
lines: 'Grafico a linee',
graph: 'Diagramma delle relazioni',
sankey: 'Diagramma di Sankey',
funnel: 'Grafico a imbuto',
gauge: 'Gauge',
pictorialBar: 'Pictorial bar',
themeRiver: 'Theme River Map',
sunburst: 'Radiale',
custom: 'Egyedi diagram',
chart: 'Grafico'
}
},
aria: {
general: {
withTitle: 'Questo è un grafico su "{title}"',
withoutTitle: 'Questo è un grafico'
},
series: {
single: {
prefix: '',
withName: ' con il tipo {seriesType} denominato {seriesName}.',
withoutName: ' con il tipo {seriesType}.'
},
multiple: {
prefix: '. È composto da {seriesCount} serie.',
withName: ' La {seriesId} serie è un {seriesType} denominata {seriesName}.',
withoutName: ' la {seriesId} serie è un {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'I dati sono come segue: ',
partialData: 'I primi {displayCnt} elementi sono: ',
withName: 'il dato per {name} è {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('IT', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langJA-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Japanese.
*/
var localeObj = {
time: {
month: [
'一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'
],
monthAbbr: [
'1月', '2月', '3月', '4月', '5月', '6月',
'7月', '8月', '9月', '10月', '11月', '12月'
],
dayOfWeek: [
'日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'
],
dayOfWeekAbbr: [
'日', '月', '火', '水', '木', '金', '土'
]
},
legend: {
selector: {
all: 'すべてを選択',
inverse: '選択範囲を反転'
}
},
toolbox: {
brush: {
title: {
rect: '矩形選択',
polygon: 'なげなわ選択',
lineX: '横方向に選択',
lineY: '縦方向に選択',
keep: '選択範囲を維持',
clear: '選択範囲をクリア'
}
},
dataView: {
title: 'データビュー',
lang: ['データビュー', '閉じる', 'リロード']
},
dataZoom: {
title: {
zoom: 'ズーム',
back: 'リセット'
}
},
magicType: {
title: {
line: '折れ線に切り替え',
bar: '棒に切り替え',
stack: '積み上げに切り替え',
tiled: 'タイル状に切り替え'
}
},
restore: {
title: '復元'
},
saveAsImage: {
title: '図として保存',
lang: ['右クリックして図を保存']
}
},
series: {
typeNames: {
pie: '円グラフ',
bar: '棒グラフ',
line: '折れ線グラフ',
scatter: '散布図',
effectScatter: 'エフェクト散布図',
radar: 'レーダーチャート',
tree: '階層グラフ',
treemap: 'ツリーマップ',
boxplot: '箱ひげ図',
candlestick: 'Kチャート',
k: 'Kチャート',
heatmap: 'ヒートマップ',
map: '地図',
parallel: 'パラレルチャート',
lines: 'ラインチャート',
graph: '相関図',
sankey: 'サンキーダイアグラム',
funnel: 'ファネルグラフ',
gauge: 'ゲージ',
pictorialBar: '絵入り棒グラフ',
themeRiver: 'テーマリバー',
sunburst: 'サンバースト',
custom: 'カスタムチャート',
chart: 'チャート'
}
},
aria: {
general: {
withTitle: 'これは「{title}」に関するチャートです。',
withoutTitle: 'これはチャートで、'
},
series: {
single: {
prefix: '',
withName: 'チャートのタイプは{seriesType}で、{seriesName}を示しています。',
withoutName: 'チャートのタイプは{seriesType}です。'
},
multiple: {
prefix: '{seriesCount}つのチャートシリーズによって構成されています。',
withName: '{seriesId}番目のシリーズは{seriesName}を示した{seriesType}で、',
withoutName: '{seriesId}番目のシリーズは{seriesType}で、',
separator: {
middle: ';',
end: '。'
}
}
},
data: {
allData: 'データは:',
partialData: 'その内、{displayCnt}番目までは:',
withName: '{name}のデータは{value}',
withoutName: '{value}',
separator: {
middle: '、',
end: ''
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langJA.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Japanese.
*/
var localeObj = {
time: {
month: [
'一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'
],
monthAbbr: [
'1月', '2月', '3月', '4月', '5月', '6月',
'7月', '8月', '9月', '10月', '11月', '12月'
],
dayOfWeek: [
'日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'
],
dayOfWeekAbbr: [
'日', '月', '火', '水', '木', '金', '土'
]
},
legend: {
selector: {
all: 'すべてを選択',
inverse: '選択範囲を反転'
}
},
toolbox: {
brush: {
title: {
rect: '矩形選択',
polygon: 'なげなわ選択',
lineX: '横方向に選択',
lineY: '縦方向に選択',
keep: '選択範囲を維持',
clear: '選択範囲をクリア'
}
},
dataView: {
title: 'データビュー',
lang: ['データビュー', '閉じる', 'リロード']
},
dataZoom: {
title: {
zoom: 'ズーム',
back: 'リセット'
}
},
magicType: {
title: {
line: '折れ線に切り替え',
bar: '棒に切り替え',
stack: '積み上げに切り替え',
tiled: 'タイル状に切り替え'
}
},
restore: {
title: '復元'
},
saveAsImage: {
title: '図として保存',
lang: ['右クリックして図を保存']
}
},
series: {
typeNames: {
pie: '円グラフ',
bar: '棒グラフ',
line: '折れ線グラフ',
scatter: '散布図',
effectScatter: 'エフェクト散布図',
radar: 'レーダーチャート',
tree: '階層グラフ',
treemap: 'ツリーマップ',
boxplot: '箱ひげ図',
candlestick: 'Kチャート',
k: 'Kチャート',
heatmap: 'ヒートマップ',
map: '地図',
parallel: 'パラレルチャート',
lines: 'ラインチャート',
graph: '相関図',
sankey: 'サンキーダイアグラム',
funnel: 'ファネルグラフ',
gauge: 'ゲージ',
pictorialBar: '絵入り棒グラフ',
themeRiver: 'テーマリバー',
sunburst: 'サンバースト',
custom: 'カスタムチャート',
chart: 'チャート'
}
},
aria: {
general: {
withTitle: 'これは「{title}」に関するチャートです。',
withoutTitle: 'これはチャートで、'
},
series: {
single: {
prefix: '',
withName: 'チャートのタイプは{seriesType}で、{seriesName}を示しています。',
withoutName: 'チャートのタイプは{seriesType}です。'
},
multiple: {
prefix: '{seriesCount}つのチャートシリーズによって構成されています。',
withName: '{seriesId}番目のシリーズは{seriesName}を示した{seriesType}で、',
withoutName: '{seriesId}番目のシリーズは{seriesType}で、',
separator: {
middle: ';',
end: '。'
}
}
},
data: {
allData: 'データは:',
partialData: 'その内、{displayCnt}番目までは:',
withName: '{name}のデータは{value}',
withoutName: '{value}',
separator: {
middle: '、',
end: ''
}
}
}
};
echarts.registerLocale('JA', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langKO-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Korean.
*/
var localeObj = {
time: {
month: [
'1월', '2월', '3월', '4월', '5월', '6월',
'7월', '8월', '9월', '10월', '11월', '12월'
],
monthAbbr: [
'1월', '2월', '3월', '4월', '5월', '6월',
'7월', '8월', '9월', '10월', '11월', '12월'
],
dayOfWeek: [
'일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'
],
dayOfWeekAbbr: [
'일', '월', '화', '수', '목', '금', '토'
]
},
legend: {
selector: {
all: '모두 선택',
inverse: '선택 범위 반전'
}
},
toolbox: {
brush: {
title: {
rect: '사각형 선택',
polygon: '올가미 선택',
lineX: '수평 선택',
lineY: '수직 선택',
keep: '선택 유지',
clear: '선택 지우기'
}
},
dataView: {
title: '날짜 보기',
lang: ['날짜 보기', '닫기', '새로 고침']
},
dataZoom: {
title: {
zoom: '확대/축소',
back: '확대/축소 초기화'
}
},
magicType: {
title: {
line: '꺽은선 그래프로 변경',
bar: '막대 그래프로 변경',
stack: '스택',
tiled: '타일'
}
},
restore: {
title: '복구'
},
saveAsImage: {
title: '이미지로 저장',
lang: ['이미지를 저장하려면 마우스 오른쪽 버튼을 클릭하세요.']
}
},
series: {
typeNames: {
pie: '원 그래프',
bar: '막대 그래프',
line: '꺽은선 그래프',
scatter: '산점도',
effectScatter: '물결 효과 산점도',
radar: '방사형 그래프',
tree: '트리',
treemap: '트리맵',
boxplot: '상자 수염 그래프',
candlestick: '캔들스틱 차트',
k: 'K 라인 차트',
heatmap: '히트 맵',
map: '지도',
parallel: '평행 좌표 맵',
lines: '선',
graph: '관계 그래프',
sankey: '산키 다이어그램',
funnel: '깔때기형 그래프',
gauge: '계기',
pictorialBar: '픽토그램 차트',
themeRiver: '스트림 그래프',
sunburst: '선버스트 차트',
custom: '맞춤 차트',
chart: '차트'
}
},
aria: {
general: {
withTitle: '"{title}"에 대한 차트입니다.',
withoutTitle: '차트입니다.'
},
series: {
single: {
prefix: '',
withName: ' 차트 유형은 {seriesType}이며 {seriesName}을 표시합니다.',
withoutName: ' 차트 유형은 {seriesType}입니다.'
},
multiple: {
prefix: '. {seriesCount} 하나의 차트 시리즈로 구성됩니다.',
withName: ' {seriesId}번째 시리즈는 {seriesName}을 나타내는 {seriesType} representing.',
withoutName: ' {seriesId}번째 시리즈는 {seriesType}입니다.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: '데이터: ',
partialData: '첫번째 {displayCnt} 아이템: ',
withName: '{name}의 데이터는 {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langKO.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Korean.
*/
var localeObj = {
time: {
month: [
'1월', '2월', '3월', '4월', '5월', '6월',
'7월', '8월', '9월', '10월', '11월', '12월'
],
monthAbbr: [
'1월', '2월', '3월', '4월', '5월', '6월',
'7월', '8월', '9월', '10월', '11월', '12월'
],
dayOfWeek: [
'일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'
],
dayOfWeekAbbr: [
'일', '월', '화', '수', '목', '금', '토'
]
},
legend: {
selector: {
all: '모두 선택',
inverse: '선택 범위 반전'
}
},
toolbox: {
brush: {
title: {
rect: '사각형 선택',
polygon: '올가미 선택',
lineX: '수평 선택',
lineY: '수직 선택',
keep: '선택 유지',
clear: '선택 지우기'
}
},
dataView: {
title: '날짜 보기',
lang: ['날짜 보기', '닫기', '새로 고침']
},
dataZoom: {
title: {
zoom: '확대/축소',
back: '확대/축소 초기화'
}
},
magicType: {
title: {
line: '꺽은선 그래프로 변경',
bar: '막대 그래프로 변경',
stack: '스택',
tiled: '타일'
}
},
restore: {
title: '복구'
},
saveAsImage: {
title: '이미지로 저장',
lang: ['이미지를 저장하려면 마우스 오른쪽 버튼을 클릭하세요.']
}
},
series: {
typeNames: {
pie: '원 그래프',
bar: '막대 그래프',
line: '꺽은선 그래프',
scatter: '산점도',
effectScatter: '물결 효과 산점도',
radar: '방사형 그래프',
tree: '트리',
treemap: '트리맵',
boxplot: '상자 수염 그래프',
candlestick: '캔들스틱 차트',
k: 'K 라인 차트',
heatmap: '히트 맵',
map: '지도',
parallel: '평행 좌표 맵',
lines: '선',
graph: '관계 그래프',
sankey: '산키 다이어그램',
funnel: '깔때기형 그래프',
gauge: '계기',
pictorialBar: '픽토그램 차트',
themeRiver: '스트림 그래프',
sunburst: '선버스트 차트',
custom: '맞춤 차트',
chart: '차트'
}
},
aria: {
general: {
withTitle: '"{title}"에 대한 차트입니다.',
withoutTitle: '차트입니다.'
},
series: {
single: {
prefix: '',
withName: ' 차트 유형은 {seriesType}이며 {seriesName}을 표시합니다.',
withoutName: ' 차트 유형은 {seriesType}입니다.'
},
multiple: {
prefix: '. {seriesCount} 하나의 차트 시리즈로 구성됩니다.',
withName: ' {seriesId}번째 시리즈는 {seriesName}을 나타내는 {seriesType} representing.',
withoutName: ' {seriesId}번째 시리즈는 {seriesType}입니다.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: '데이터: ',
partialData: '첫번째 {displayCnt} 아이템: ',
withName: '{name}의 데이터는 {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('KO', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langNL-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Dutch.
*/
var localeObj = {
time: {
month: [
'januari', 'februari', 'maart', 'april', 'mei', 'juni',
'juli', 'augustus', 'september', 'oktober', 'november', 'december'
],
monthAbbr: [
'jan', 'feb', 'mrt', 'apr', 'mei', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'dec'
],
dayOfWeek: [
'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'
],
dayOfWeekAbbr: [
'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'
]
},
legend: {
selector: {
all: 'Alle',
inverse: 'Omgekeerd'
}
},
toolbox: {
brush: {
title: {
rect: 'Vakselectie',
polygon: 'Lasso selectie',
lineX: 'Horizontale selectie',
lineY: 'Verticale selectie',
keep: 'Selecties behouden',
clear: 'Selecties wissen'
}
},
dataView: {
title: 'Gegevensweergave',
lang: ['Gegevensweergave', 'Sluiten', 'Vernieuwen']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom herstellen'
}
},
magicType: {
title: {
line: 'Omzetten naar lijndiagram',
bar: 'Omzetten naar staafdiagram',
stack: 'Omzetten naar stapeldiagram',
tiled: 'Omzetten naar tegeldiagram'
}
},
restore: {
title: 'Herstellen'
},
saveAsImage: {
title: 'Opslaan als afbeelding',
lang: ['Klik rechtermuisknop om de afbeelding op te slaan']
}
},
series: {
typeNames: {
pie: 'Cirkeldiagram',
bar: 'Staafdiagram',
line: 'Lijndiagram',
scatter: 'Spreidingsdiagram',
effectScatter: 'Spreidingsdiagram met rimpeleffect',
radar: 'Radardiagram',
tree: 'Boomdiagram',
treemap: 'Boomkaart',
boxplot: 'Boxplot',
candlestick: 'Kandelaardiagram',
k: 'K-lijndiagram',
heatmap: 'Hittekaart',
map: 'Kaart',
parallel: 'Parallele coördinatendiagram',
lines: 'Lijnendiagram',
graph: 'Relatiediagram',
sankey: 'Sankey-diagram',
funnel: 'Trechterdiagram',
gauge: 'Graadmeter',
pictorialBar: 'Staafdiagram met afbeeldingen',
themeRiver: 'Thematische rivierdiagram',
sunburst: 'Zonnestraaldiagram',
custom: 'Aangepast diagram',
chart: 'Diagram'
}
},
aria: {
general: {
withTitle: 'Dit is een diagram over "{title}"',
withoutTitle: 'Dit is een diagram'
},
series: {
single: {
prefix: '',
withName: ' van het type {seriesType} genaamd {seriesName}.',
withoutName: ' van het type {seriesType}.'
},
multiple: {
prefix: '. Het bestaat uit {seriesCount} series.',
withName: ' De serie {seriesId} is een {seriesType} met de naam {seriesName}.',
withoutName: ' De serie {seriesId} is een {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'De gegevens zijn als volgt: ',
partialData: 'De eerste {displayCnt} items zijn: ',
withName: 'de gegevens voor {name} zijn {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langNL.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Dutch.
*/
var localeObj = {
time: {
month: [
'januari', 'februari', 'maart', 'april', 'mei', 'juni',
'juli', 'augustus', 'september', 'oktober', 'november', 'december'
],
monthAbbr: [
'jan', 'feb', 'mrt', 'apr', 'mei', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'dec'
],
dayOfWeek: [
'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'
],
dayOfWeekAbbr: [
'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'
]
},
legend: {
selector: {
all: 'Alle',
inverse: 'Omgekeerd'
}
},
toolbox: {
brush: {
title: {
rect: 'Vakselectie',
polygon: 'Lasso selectie',
lineX: 'Horizontale selectie',
lineY: 'Verticale selectie',
keep: 'Selecties behouden',
clear: 'Selecties wissen'
}
},
dataView: {
title: 'Gegevensweergave',
lang: ['Gegevensweergave', 'Sluiten', 'Vernieuwen']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Zoom herstellen'
}
},
magicType: {
title: {
line: 'Omzetten naar lijndiagram',
bar: 'Omzetten naar staafdiagram',
stack: 'Omzetten naar stapeldiagram',
tiled: 'Omzetten naar tegeldiagram'
}
},
restore: {
title: 'Herstellen'
},
saveAsImage: {
title: 'Opslaan als afbeelding',
lang: ['Klik rechtermuisknop om de afbeelding op te slaan']
}
},
series: {
typeNames: {
pie: 'Cirkeldiagram',
bar: 'Staafdiagram',
line: 'Lijndiagram',
scatter: 'Spreidingsdiagram',
effectScatter: 'Spreidingsdiagram met rimpeleffect',
radar: 'Radardiagram',
tree: 'Boomdiagram',
treemap: 'Boomkaart',
boxplot: 'Boxplot',
candlestick: 'Kandelaardiagram',
k: 'K-lijndiagram',
heatmap: 'Hittekaart',
map: 'Kaart',
parallel: 'Parallele coördinatendiagram',
lines: 'Lijnendiagram',
graph: 'Relatiediagram',
sankey: 'Sankey-diagram',
funnel: 'Trechterdiagram',
gauge: 'Graadmeter',
pictorialBar: 'Staafdiagram met afbeeldingen',
themeRiver: 'Thematische rivierdiagram',
sunburst: 'Zonnestraaldiagram',
custom: 'Aangepast diagram',
chart: 'Diagram'
}
},
aria: {
general: {
withTitle: 'Dit is een diagram over "{title}"',
withoutTitle: 'Dit is een diagram'
},
series: {
single: {
prefix: '',
withName: ' van het type {seriesType} genaamd {seriesName}.',
withoutName: ' van het type {seriesType}.'
},
multiple: {
prefix: '. Het bestaat uit {seriesCount} series.',
withName: ' De serie {seriesId} is een {seriesType} met de naam {seriesName}.',
withoutName: ' De serie {seriesId} is een {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'De gegevens zijn als volgt: ',
partialData: 'De eerste {displayCnt} items zijn: ',
withName: 'de gegevens voor {name} zijn {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('NL', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langPL-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Polish
*/
var localeObj = {
time: {
month: [
'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec',
'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'
],
monthAbbr: [
'Sty', 'Lut', 'Mar', 'Kwi', 'Maj', 'Cze',
'Lip', 'Sie', 'Wrz', 'Paź', 'Lis', 'Gru'
],
dayOfWeek: [
'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota'
],
dayOfWeekAbbr: [
'Nie', 'Pon', 'Wto', 'Śro', 'Czw', 'Pią', 'Sob'
]
},
legend: {
selector: {
all: 'Wszystko',
inverse: 'Odwróć'
}
},
toolbox: {
brush: {
title: {
rect: 'Zaznaczenie prostokątne',
polygon: 'Zaznaczanie lasso',
lineX: 'Zaznaczenie poziome',
lineY: 'Zaznaczenie pionowe',
keep: 'Zachowaj zaznaczenie',
clear: 'Wyczyść zaznaczenie'
}
},
dataView: {
title: 'Widok danych',
lang: ['Widok danych', 'Zamknij', 'Odśwież']
},
dataZoom: {
title: {
zoom: 'Przybliżenie',
back: 'Resetuj przybliżenie'
}
},
magicType: {
title: {
line: 'Przełącz na wykres liniowy',
bar: 'Przełącz na wykres słupkowy',
stack: 'Przełącz na wykres słupkowy skumulowany',
tiled: 'Przełącz na kafelki'
}
},
restore: {
title: 'Przywróć'
},
saveAsImage: {
title: 'Zapisz jako obrazek',
lang: ['Kliknij prawym klawiszem myszy aby zapisać']
}
},
series: {
typeNames: {
pie: 'Wykres kołowy',
bar: 'Wykres słupkowy',
line: 'Wykres liniowy',
scatter: 'Wykres punktowy',
effectScatter: 'Wykres punktowy z efektem falowania',
radar: 'Wykres radarowy',
tree: 'Drzewo',
treemap: 'Mapa drzewa',
boxplot: 'Wykres pudełkowy',
candlestick: 'Wykres świecowy',
k: 'Wykres linii K',
heatmap: 'Mapa ciepła',
map: 'Mapa',
parallel: 'Wykres współrzędnych równoległych',
lines: 'Diagram linii',
graph: 'Graf relacji',
sankey: 'Wykres Sankeya',
funnel: 'Wykres lejkowy',
gauge: 'Wykres zegarowy',
pictorialBar: 'Wykres słupkowy obrazkowy',
themeRiver: 'Wykres rzeki tematycznej',
sunburst: 'Wykres hierarchiczny słonecznikowy',
custom: 'Wykres niestandardowy',
chart: 'Wykres'
}
},
aria: {
general: {
withTitle: 'To jest wykres dotyczący "{title}"',
withoutTitle: 'To jest wykres'
},
series: {
single: {
prefix: '',
withName: ' typu {seriesType} nazwana {seriesName}.',
withoutName: ' typu {seriesType}.'
},
multiple: {
prefix: '. Składający się z {seriesCount} serii danych.',
withName: ' Seria danych {seriesId} jest serią typu {seriesType} przedstawiającą {seriesName}.',
withoutName: ' Seria danych {seriesId} jest serią typu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Dane są następujące: ',
partialData: 'Pierwszych {displayCnt} elementów to: ',
withName: 'dane dla {name} to {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langPL.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Polish
*/
var localeObj = {
time: {
month: [
'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec',
'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'
],
monthAbbr: [
'Sty', 'Lut', 'Mar', 'Kwi', 'Maj', 'Cze',
'Lip', 'Sie', 'Wrz', 'Paź', 'Lis', 'Gru'
],
dayOfWeek: [
'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota'
],
dayOfWeekAbbr: [
'Nie', 'Pon', 'Wto', 'Śro', 'Czw', 'Pią', 'Sob'
]
},
legend: {
selector: {
all: 'Wszystko',
inverse: 'Odwróć'
}
},
toolbox: {
brush: {
title: {
rect: 'Zaznaczenie prostokątne',
polygon: 'Zaznaczanie lasso',
lineX: 'Zaznaczenie poziome',
lineY: 'Zaznaczenie pionowe',
keep: 'Zachowaj zaznaczenie',
clear: 'Wyczyść zaznaczenie'
}
},
dataView: {
title: 'Widok danych',
lang: ['Widok danych', 'Zamknij', 'Odśwież']
},
dataZoom: {
title: {
zoom: 'Przybliżenie',
back: 'Resetuj przybliżenie'
}
},
magicType: {
title: {
line: 'Przełącz na wykres liniowy',
bar: 'Przełącz na wykres słupkowy',
stack: 'Przełącz na wykres słupkowy skumulowany',
tiled: 'Przełącz na kafelki'
}
},
restore: {
title: 'Przywróć'
},
saveAsImage: {
title: 'Zapisz jako obrazek',
lang: ['Kliknij prawym klawiszem myszy aby zapisać']
}
},
series: {
typeNames: {
pie: 'Wykres kołowy',
bar: 'Wykres słupkowy',
line: 'Wykres liniowy',
scatter: 'Wykres punktowy',
effectScatter: 'Wykres punktowy z efektem falowania',
radar: 'Wykres radarowy',
tree: 'Drzewo',
treemap: 'Mapa drzewa',
boxplot: 'Wykres pudełkowy',
candlestick: 'Wykres świecowy',
k: 'Wykres linii K',
heatmap: 'Mapa ciepła',
map: 'Mapa',
parallel: 'Wykres współrzędnych równoległych',
lines: 'Diagram linii',
graph: 'Graf relacji',
sankey: 'Wykres Sankeya',
funnel: 'Wykres lejkowy',
gauge: 'Wykres zegarowy',
pictorialBar: 'Wykres słupkowy obrazkowy',
themeRiver: 'Wykres rzeki tematycznej',
sunburst: 'Wykres hierarchiczny słonecznikowy',
custom: 'Wykres niestandardowy',
chart: 'Wykres'
}
},
aria: {
general: {
withTitle: 'To jest wykres dotyczący "{title}"',
withoutTitle: 'To jest wykres'
},
series: {
single: {
prefix: '',
withName: ' typu {seriesType} nazwana {seriesName}.',
withoutName: ' typu {seriesType}.'
},
multiple: {
prefix: '. Składający się z {seriesCount} serii danych.',
withName: ' Seria danych {seriesId} jest serią typu {seriesType} przedstawiającą {seriesName}.',
withoutName: ' Seria danych {seriesId} jest serią typu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Dane są następujące: ',
partialData: 'Pierwszych {displayCnt} elementów to: ',
withName: 'dane dla {name} to {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('PL', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langPT-br-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Portuguese (Brazil).
*/
var localeObj = {
time: {
month: [
'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho',
'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'
],
monthAbbr: [
'Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun',
'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'
],
dayOfWeek: [
'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira',
'Quinta-feira', 'Sexta-feira', 'Sábado'
],
dayOfWeekAbbr: [
'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'
]
},
legend: {
selector: {
all: 'Todas',
inverse: 'Inverter'
}
},
toolbox: {
brush: {
title: {
rect: 'Seleção retangular',
polygon: 'Seleção em laço',
lineX: 'Selecionar horizontalmente',
lineY: 'Selecionar verticalmente',
keep: 'Manter seleções',
clear: 'Limpar seleções'
}
},
dataView: {
title: 'Exibição de dados',
lang: ['Exibição de dados', 'Fechar', 'Atualizar']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Restaurar Zoom'
}
},
magicType: {
title: {
line: 'Trocar para gráfico de linhas',
bar: 'Trocar para gráfico de barras',
stack: 'Empilhar',
tiled: 'Tile'
}
},
restore: {
title: 'Restaurar'
},
saveAsImage: {
title: 'Salvar como imagem',
lang: ['Clique com o botão direito para salvar imagem']
}
},
series: {
typeNames: {
pie: 'Gráfico de pizza',
bar: 'Gráfico de barras',
line: 'Gráfico de linhas',
scatter: 'Gráfico de dispersão',
effectScatter: 'Gráfico de dispersão ondulado',
radar: 'Gráfico radar',
tree: 'Gráfico de árvore',
treemap: 'Mapa de árvore',
boxplot: 'Gráfico de caixa',
candlestick: 'Gráfico de vela',
k: 'Gráfico de linha K',
heatmap: 'Mapa de calor',
map: 'Mapa',
parallel: 'Coordenadas paralelas',
lines: 'Gráfico de linhas',
graph: 'Grafo',
sankey: 'Gráfico Sankey',
funnel: 'Gráfico de funil',
gauge: 'Gráfico de medidor',
pictorialBar: 'Barra pictórica',
themeRiver: 'Gráfico de rio de tema',
sunburst: 'Gráfico de explosão solar',
custom: 'Gráfico personalizado',
chart: 'Gráfico'
}
},
aria: {
general: {
withTitle: 'Este é um gráfico entitulado "{title}"',
withoutTitle: 'Este é um gráfico'
},
series: {
single: {
prefix: '',
withName: ' do tipo {seriesType} nomeada/nomeado como {seriesName}.',
withoutName: ' do tipo {seriesType}.'
},
multiple: {
prefix: '. Consiste de {seriesCount} séries.',
withName: ' A {seriesId} série é um/uma {seriesType} representando {seriesName}.',
withoutName: ' A {seriesId} series é um/uma {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Os dados são: ',
partialData: 'As primeiros {displayCnt} itens são: ',
withName: 'os dados para {name} são {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langPT-br.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Portuguese (Brazil).
*/
var localeObj = {
time: {
month: [
'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho',
'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'
],
monthAbbr: [
'Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun',
'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'
],
dayOfWeek: [
'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira',
'Quinta-feira', 'Sexta-feira', 'Sábado'
],
dayOfWeekAbbr: [
'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'
]
},
legend: {
selector: {
all: 'Todas',
inverse: 'Inverter'
}
},
toolbox: {
brush: {
title: {
rect: 'Seleção retangular',
polygon: 'Seleção em laço',
lineX: 'Selecionar horizontalmente',
lineY: 'Selecionar verticalmente',
keep: 'Manter seleções',
clear: 'Limpar seleções'
}
},
dataView: {
title: 'Exibição de dados',
lang: ['Exibição de dados', 'Fechar', 'Atualizar']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Restaurar Zoom'
}
},
magicType: {
title: {
line: 'Trocar para gráfico de linhas',
bar: 'Trocar para gráfico de barras',
stack: 'Empilhar',
tiled: 'Tile'
}
},
restore: {
title: 'Restaurar'
},
saveAsImage: {
title: 'Salvar como imagem',
lang: ['Clique com o botão direito para salvar imagem']
}
},
series: {
typeNames: {
pie: 'Gráfico de pizza',
bar: 'Gráfico de barras',
line: 'Gráfico de linhas',
scatter: 'Gráfico de dispersão',
effectScatter: 'Gráfico de dispersão ondulado',
radar: 'Gráfico radar',
tree: 'Gráfico de árvore',
treemap: 'Mapa de árvore',
boxplot: 'Gráfico de caixa',
candlestick: 'Gráfico de vela',
k: 'Gráfico de linha K',
heatmap: 'Mapa de calor',
map: 'Mapa',
parallel: 'Coordenadas paralelas',
lines: 'Gráfico de linhas',
graph: 'Grafo',
sankey: 'Gráfico Sankey',
funnel: 'Gráfico de funil',
gauge: 'Gráfico de medidor',
pictorialBar: 'Barra pictórica',
themeRiver: 'Gráfico de rio de tema',
sunburst: 'Gráfico de explosão solar',
custom: 'Gráfico personalizado',
chart: 'Gráfico'
}
},
aria: {
general: {
withTitle: 'Este é um gráfico entitulado "{title}"',
withoutTitle: 'Este é um gráfico'
},
series: {
single: {
prefix: '',
withName: ' do tipo {seriesType} nomeada/nomeado como {seriesName}.',
withoutName: ' do tipo {seriesType}.'
},
multiple: {
prefix: '. Consiste de {seriesCount} séries.',
withName: ' A {seriesId} série é um/uma {seriesType} representando {seriesName}.',
withoutName: ' A {seriesId} series é um/uma {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Os dados são: ',
partialData: 'As primeiros {displayCnt} itens são: ',
withName: 'os dados para {name} são {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('PT-br', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langRO-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Romanian.
*/
var localeObj = {
time: {
month: [
'ianuarie', 'februarie', 'martie', 'aprilie', 'mai', 'iunie',
'iulie', 'august', 'septembrie', 'octombrie', 'noiembrie', 'decembrie'
],
monthAbbr: [
'ian.', 'febr.', 'mart.', 'apr.', 'mai', 'iun.',
'iul.', 'aug.', 'sept.', 'oct.', 'nov.', 'dec.'
],
dayOfWeek: [
'Duminică', 'Luni', 'Marți', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'
],
dayOfWeekAbbr: [
'du.', 'lu.', 'ma.', 'mi.', 'jo.', 'vi.', 'sâ.'
]
},
legend: {
selector: {
all: 'Toate',
inverse: 'Inversează'
}
},
toolbox: {
brush: {
title: {
rect: 'Selecție dreptunghiulară',
polygon: 'Selecție lasso',
lineX: 'Selecție orizontală',
lineY: 'Selecție verticală',
keep: 'Păstrează selecția',
clear: 'Șterge selecția'
}
},
dataView: {
title: 'Vizualizarea datelor',
lang: ['Vizualizarea datelor', 'Închide', 'Reîmprospătează']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Resetează zoom'
}
},
magicType: {
title: {
line: 'Comută la diagramă cu linii',
bar: 'Comută la diagramă cu bare',
stack: 'Suprapune',
tiled: 'Alătură'
}
},
restore: {
title: 'Resetează'
},
saveAsImage: {
title: 'Salvează ca imagine',
lang: ['Clic dreapta pentru a salva ca imagine']
}
},
series: {
typeNames: {
pie: 'Diagramă radială',
bar: 'Diagramă cu bare',
line: 'Diagramă cu linii',
scatter: 'Diagramă de dispersie',
effectScatter: 'Diagramă de dispersie stilizată',
radar: 'Diagramă radar',
tree: 'Arbore',
treemap: 'Hartă de arbori',
boxplot: 'Diagramă boxbare',
candlestick: 'Diagramă bursieră',
k: 'Diagramă cu linii K',
heatmap: 'Hartă termografică',
map: 'Hartă',
parallel: 'Hartă de coordonate paralele',
lines: 'Linii',
graph: 'Graf',
sankey: 'Diagramă Sankey',
funnel: 'Diagramă pâlnie',
gauge: 'Calibru',
pictorialBar: 'Diagramă cu bare picturale',
themeRiver: 'Streamgraph',
sunburst: 'Diagramă rază de soare',
custom: 'Diagramă personalizată',
chart: 'Diagramă'
}
},
aria: {
general: {
withTitle: 'Aceasta este o diagrmă despre "{title}"',
withoutTitle: 'Aceasta este o diagramă'
},
series: {
single: {
prefix: '',
withName: ' de tipul {seriesType} denumită {seriesName}.',
withoutName: ' de tipul {seriesType}.'
},
multiple: {
prefix: '. Este alcătuită din {seriesCount} serii.',
withName: ' Seria {seriesId} este de tipul {seriesType} și reprezintă {seriesName}.',
withoutName: ' Seria {seriesId} este de tipul {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Datele sunt: ',
partialData: 'Primele {displayCnt} elemente sunt: ',
withName: 'datele pentru {name} sunt {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langRO.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Romanian.
*/
var localeObj = {
time: {
month: [
'ianuarie', 'februarie', 'martie', 'aprilie', 'mai', 'iunie',
'iulie', 'august', 'septembrie', 'octombrie', 'noiembrie', 'decembrie'
],
monthAbbr: [
'ian.', 'febr.', 'mart.', 'apr.', 'mai', 'iun.',
'iul.', 'aug.', 'sept.', 'oct.', 'nov.', 'dec.'
],
dayOfWeek: [
'Duminică', 'Luni', 'Marți', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'
],
dayOfWeekAbbr: [
'du.', 'lu.', 'ma.', 'mi.', 'jo.', 'vi.', 'sâ.'
]
},
legend: {
selector: {
all: 'Toate',
inverse: 'Inversează'
}
},
toolbox: {
brush: {
title: {
rect: 'Selecție dreptunghiulară',
polygon: 'Selecție lasso',
lineX: 'Selecție orizontală',
lineY: 'Selecție verticală',
keep: 'Păstrează selecția',
clear: 'Șterge selecția'
}
},
dataView: {
title: 'Vizualizarea datelor',
lang: ['Vizualizarea datelor', 'Închide', 'Reîmprospătează']
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Resetează zoom'
}
},
magicType: {
title: {
line: 'Comută la diagramă cu linii',
bar: 'Comută la diagramă cu bare',
stack: 'Suprapune',
tiled: 'Alătură'
}
},
restore: {
title: 'Resetează'
},
saveAsImage: {
title: 'Salvează ca imagine',
lang: ['Clic dreapta pentru a salva ca imagine']
}
},
series: {
typeNames: {
pie: 'Diagramă radială',
bar: 'Diagramă cu bare',
line: 'Diagramă cu linii',
scatter: 'Diagramă de dispersie',
effectScatter: 'Diagramă de dispersie stilizată',
radar: 'Diagramă radar',
tree: 'Arbore',
treemap: 'Hartă de arbori',
boxplot: 'Diagramă boxbare',
candlestick: 'Diagramă bursieră',
k: 'Diagramă cu linii K',
heatmap: 'Hartă termografică',
map: 'Hartă',
parallel: 'Hartă de coordonate paralele',
lines: 'Linii',
graph: 'Graf',
sankey: 'Diagramă Sankey',
funnel: 'Diagramă pâlnie',
gauge: 'Calibru',
pictorialBar: 'Diagramă cu bare picturale',
themeRiver: 'Streamgraph',
sunburst: 'Diagramă rază de soare',
custom: 'Diagramă personalizată',
chart: 'Diagramă'
}
},
aria: {
general: {
withTitle: 'Aceasta este o diagrmă despre "{title}"',
withoutTitle: 'Aceasta este o diagramă'
},
series: {
single: {
prefix: '',
withName: ' de tipul {seriesType} denumită {seriesName}.',
withoutName: ' de tipul {seriesType}.'
},
multiple: {
prefix: '. Este alcătuită din {seriesCount} serii.',
withName: ' Seria {seriesId} este de tipul {seriesType} și reprezintă {seriesName}.',
withoutName: ' Seria {seriesId} este de tipul {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Datele sunt: ',
partialData: 'Primele {displayCnt} elemente sunt: ',
withName: 'datele pentru {name} sunt {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('RO', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langRU-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Russian.
*/
var localeObj = {
time: {
month: [
'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
],
monthAbbr: [
'Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн',
'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'
],
dayOfWeek: [
'Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'
],
dayOfWeekAbbr: [
'вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'
]
},
legend: {
selector: {
all: 'Всё',
inverse: 'Обратить'
}
},
toolbox: {
brush: {
title: {
rect: 'Выделить область',
polygon: 'Инструмент «Лассо»',
lineX: 'Горизонтальное выделение',
lineY: 'Вертикальное выделение',
keep: 'Оставить выбранное',
clear: 'Очистить выбранное'
}
},
dataView: {
title: 'Данные',
lang: ['Данные', 'Закрыть', 'Обновить']
},
dataZoom: {
title: {
zoom: 'Увеличить',
back: 'Сбросить увеличение'
}
},
magicType: {
title: {
line: 'Переключиться на линейный график',
bar: 'Переключиться на столбчатую диаграмму',
stack: 'Стопка',
tiled: 'Плитка'
}
},
restore: {
title: 'Восстановить'
},
saveAsImage: {
title: 'Сохранить картинку',
lang: ['Правый клик, чтобы сохранить картинку']
}
},
series: {
typeNames: {
pie: 'Круговая диаграмма',
bar: 'Столбчатая диаграмма',
line: 'Линейный график',
scatter: 'Точечная диаграмма',
effectScatter: 'Точечная диаграмма с волнами',
radar: 'Лепестковая диаграмма',
tree: 'Дерево',
treemap: 'Плоское дерево',
boxplot: 'Ящик с усами',
candlestick: 'Свечной график',
k: 'График К-линий',
heatmap: 'Тепловая карта',
map: 'Карта',
parallel: 'Диаграмма параллельных координат',
lines: 'Линейный граф',
graph: 'Граф отношений',
sankey: 'Диаграмма Санкей',
funnel: 'Воронкообразная диаграмма',
gauge: 'Шкала',
pictorialBar: 'Столбец-картинка',
themeRiver: 'Тематическая река',
sunburst: 'Солнечные лучи',
custom: 'Пользовательская диаграмма',
chart: 'диаграмма'
}
},
aria: {
general: {
withTitle: 'Это график, показывающий "{title}"',
withoutTitle: 'Это график'
},
series: {
single: {
prefix: '',
withName: ' с типом {seriesType} и именем {seriesName}.',
withoutName: ' с типом {seriesType}.'
},
multiple: {
prefix: '. Он состоит из {seriesCount} серий.',
withName:
' Серия {seriesId} имеет тип {seriesType} и показывает {seriesName}.',
withoutName: ' Серия {seriesId} имеет тип {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Данные таковы: ',
partialData: 'Первые {displayCnt} элементов: ',
withName: 'значение для {name} — {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langRU.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Russian.
*/
var localeObj = {
time: {
month: [
'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',
'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'
],
monthAbbr: [
'Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн',
'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'
],
dayOfWeek: [
'Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'
],
dayOfWeekAbbr: [
'вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'
]
},
legend: {
selector: {
all: 'Всё',
inverse: 'Обратить'
}
},
toolbox: {
brush: {
title: {
rect: 'Выделить область',
polygon: 'Инструмент «Лассо»',
lineX: 'Горизонтальное выделение',
lineY: 'Вертикальное выделение',
keep: 'Оставить выбранное',
clear: 'Очистить выбранное'
}
},
dataView: {
title: 'Данные',
lang: ['Данные', 'Закрыть', 'Обновить']
},
dataZoom: {
title: {
zoom: 'Увеличить',
back: 'Сбросить увеличение'
}
},
magicType: {
title: {
line: 'Переключиться на линейный график',
bar: 'Переключиться на столбчатую диаграмму',
stack: 'Стопка',
tiled: 'Плитка'
}
},
restore: {
title: 'Восстановить'
},
saveAsImage: {
title: 'Сохранить картинку',
lang: ['Правый клик, чтобы сохранить картинку']
}
},
series: {
typeNames: {
pie: 'Круговая диаграмма',
bar: 'Столбчатая диаграмма',
line: 'Линейный график',
scatter: 'Точечная диаграмма',
effectScatter: 'Точечная диаграмма с волнами',
radar: 'Лепестковая диаграмма',
tree: 'Дерево',
treemap: 'Плоское дерево',
boxplot: 'Ящик с усами',
candlestick: 'Свечной график',
k: 'График К-линий',
heatmap: 'Тепловая карта',
map: 'Карта',
parallel: 'Диаграмма параллельных координат',
lines: 'Линейный граф',
graph: 'Граф отношений',
sankey: 'Диаграмма Санкей',
funnel: 'Воронкообразная диаграмма',
gauge: 'Шкала',
pictorialBar: 'Столбец-картинка',
themeRiver: 'Тематическая река',
sunburst: 'Солнечные лучи',
custom: 'Пользовательская диаграмма',
chart: 'диаграмма'
}
},
aria: {
general: {
withTitle: 'Это график, показывающий "{title}"',
withoutTitle: 'Это график'
},
series: {
single: {
prefix: '',
withName: ' с типом {seriesType} и именем {seriesName}.',
withoutName: ' с типом {seriesType}.'
},
multiple: {
prefix: '. Он состоит из {seriesCount} серий.',
withName:
' Серия {seriesId} имеет тип {seriesType} и показывает {seriesName}.',
withoutName: ' Серия {seriesId} имеет тип {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Данные таковы: ',
partialData: 'Первые {displayCnt} элементов: ',
withName: 'значение для {name} — {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('RU', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langSI-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Slovenian.
*/
var localeObj = {
time: {
month: [
'Januar', 'Februar', 'Marec', 'April', 'Maj', 'Junij',
'Julij', 'Avgust', 'September', 'Oktober', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun',
'Jul', 'Avg', 'Sep', 'Okt', 'Nov', 'Dec'
],
dayOfWeek: [
'Nedelja', 'Ponedeljek', 'Torek', 'Sreda', 'Četrtek', 'Petek', 'Sobota'
],
dayOfWeekAbbr: [
'Ned', 'Pon', 'Tor', 'Sre', 'Čet', 'Pet', 'Sob'
]
},
legend: {
selector: {
all: 'Vsi',
inverse: 'Obratno'
}
},
toolbox: {
brush: {
title: {
rect: 'Izbor s pravokotnikom',
polygon: 'Izbor z lasom',
lineX: 'Vodoravni izbor',
lineY: 'Navpični izbor',
keep: 'Ohrani izbor',
clear: 'Počisti izbor'
}
},
dataView: {
title: 'Pogled podatkov',
lang: ['Pogled podatkov', 'Zapri', 'Osveži']
},
dataZoom: {
title: {
zoom: 'Približaj',
back: 'Povrni velikost'
}
},
magicType: {
title: {
line: 'Preklopi na črtni grafikon',
bar: 'Preklopi na stolpčni grafikon',
stack: 'Naloži',
tiled: 'Drug ob drugem'
}
},
restore: {
title: 'Povrni'
},
saveAsImage: {
title: 'Shrani kot sliko',
lang: ['Z desnim klikom shrani sliko']
}
},
series: {
typeNames: {
pie: 'Tortni grafikon',
bar: 'Stolpčni grafikon',
line: 'Črtni grafikon',
scatter: 'Raztreseni grafikon',
effectScatter: 'Raztreseni grafikon z efektom',
radar: 'Radarski grafikon',
tree: 'Drevo',
treemap: 'Drevesna struktura',
boxplot: 'Boxplot grafikon',
candlestick: 'Svečni grafikon',
k: 'K line grafikon',
heatmap: 'Toplotni zemljevid',
map: 'Zemljevid',
parallel: 'Zemljevid vzporednih koordinat',
lines: 'Črtni grafikon',
graph: 'Grafikon razmerij',
sankey: 'Sankey grafikon',
funnel: 'Lijakasti grafikon',
gauge: 'Števec',
pictorialBar: 'Stolpčni grafikon s podobo',
themeRiver: 'Tematski rečni grafikon',
sunburst: 'Večnivojski tortni grafikon',
custom: 'Grafikon po meri',
chart: 'Grafikon'
}
},
aria: {
general: {
withTitle: 'To je grafikon z naslovom "{title}"',
withoutTitle: 'To je grafikon'
},
series: {
single: {
prefix: '',
withName: ' tipa {seriesType} imenovan {seriesName}.',
withoutName: ' tipa {seriesType}.'
},
multiple: {
prefix: '. Sestavljen iz {seriesCount} nizov.',
withName: ' Niz {seriesId} je tipa {seriesType} z nazivom {seriesName}.',
withoutName: ' Niz {seriesId} je tipa {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Podatki so naslednji: ',
partialData: 'Prvih {displayCnt} elementov je: ',
withName: 'podatek za {name} je {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langSI.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Slovenian.
*/
var localeObj = {
time: {
month: [
'Januar', 'Februar', 'Marec', 'April', 'Maj', 'Junij',
'Julij', 'Avgust', 'September', 'Oktober', 'November', 'December'
],
monthAbbr: [
'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun',
'Jul', 'Avg', 'Sep', 'Okt', 'Nov', 'Dec'
],
dayOfWeek: [
'Nedelja', 'Ponedeljek', 'Torek', 'Sreda', 'Četrtek', 'Petek', 'Sobota'
],
dayOfWeekAbbr: [
'Ned', 'Pon', 'Tor', 'Sre', 'Čet', 'Pet', 'Sob'
]
},
legend: {
selector: {
all: 'Vsi',
inverse: 'Obratno'
}
},
toolbox: {
brush: {
title: {
rect: 'Izbor s pravokotnikom',
polygon: 'Izbor z lasom',
lineX: 'Vodoravni izbor',
lineY: 'Navpični izbor',
keep: 'Ohrani izbor',
clear: 'Počisti izbor'
}
},
dataView: {
title: 'Pogled podatkov',
lang: ['Pogled podatkov', 'Zapri', 'Osveži']
},
dataZoom: {
title: {
zoom: 'Približaj',
back: 'Povrni velikost'
}
},
magicType: {
title: {
line: 'Preklopi na črtni grafikon',
bar: 'Preklopi na stolpčni grafikon',
stack: 'Naloži',
tiled: 'Drug ob drugem'
}
},
restore: {
title: 'Povrni'
},
saveAsImage: {
title: 'Shrani kot sliko',
lang: ['Z desnim klikom shrani sliko']
}
},
series: {
typeNames: {
pie: 'Tortni grafikon',
bar: 'Stolpčni grafikon',
line: 'Črtni grafikon',
scatter: 'Raztreseni grafikon',
effectScatter: 'Raztreseni grafikon z efektom',
radar: 'Radarski grafikon',
tree: 'Drevo',
treemap: 'Drevesna struktura',
boxplot: 'Boxplot grafikon',
candlestick: 'Svečni grafikon',
k: 'K line grafikon',
heatmap: 'Toplotni zemljevid',
map: 'Zemljevid',
parallel: 'Zemljevid vzporednih koordinat',
lines: 'Črtni grafikon',
graph: 'Grafikon razmerij',
sankey: 'Sankey grafikon',
funnel: 'Lijakasti grafikon',
gauge: 'Števec',
pictorialBar: 'Stolpčni grafikon s podobo',
themeRiver: 'Tematski rečni grafikon',
sunburst: 'Večnivojski tortni grafikon',
custom: 'Grafikon po meri',
chart: 'Grafikon'
}
},
aria: {
general: {
withTitle: 'To je grafikon z naslovom "{title}"',
withoutTitle: 'To je grafikon'
},
series: {
single: {
prefix: '',
withName: ' tipa {seriesType} imenovan {seriesName}.',
withoutName: ' tipa {seriesType}.'
},
multiple: {
prefix: '. Sestavljen iz {seriesCount} nizov.',
withName: ' Niz {seriesId} je tipa {seriesType} z nazivom {seriesName}.',
withoutName: ' Niz {seriesId} je tipa {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Podatki so naslednji: ',
partialData: 'Prvih {displayCnt} elementov je: ',
withName: 'podatek za {name} je {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('SI', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langSV-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Swedish.
*/
var localeObj = {
time: {
month: [
'januari', 'februari', 'mars', 'april', 'maj', 'juni',
'juli', 'augusti', 'september', 'oktober', 'november', 'december',
],
monthAbbr: [
'jan', 'feb', 'mar', 'apr', 'maj', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'dec',
],
dayOfWeek: [
'söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag',
],
dayOfWeekAbbr: [
'sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör',
],
},
legend: {
selector: {
all: 'Alla',
inverse: 'Omvänd',
},
},
toolbox: {
brush: {
title: {
rect: 'Rektangelurval',
polygon: 'Lassomarkering',
lineX: 'Vågrätt urval',
lineY: 'Lodrätt urval',
keep: 'Behåll urval',
clear: 'Rensa urval',
},
},
dataView: {
title: 'Datavy',
lang: ['Datavy', 'Stäng', 'Uppdatera'],
},
dataZoom: {
title: {
zoom: 'Zooma',
back: 'Återställ zoom',
},
},
magicType: {
title: {
line: 'Byt till linjediagram',
bar: 'Byt till stapeldiagram',
stack: 'Stapla',
tiled: 'Sida vid sida',
},
},
restore: {
title: 'Återställ',
},
saveAsImage: {
title: 'Spara som bild',
lang: ['Högerklicka för att spara bild'],
},
},
series: {
typeNames: {
pie: 'Cirkeldiagram',
bar: 'Stapeldiagram',
line: 'Linjediagram',
scatter: 'Punktdiagram',
effectScatter: 'Punktdiagram med rippeleffekt',
radar: 'Radardiagram',
tree: 'Träd',
treemap: 'Trädkarta',
boxplot: 'Lådagram',
candlestick: 'Candlestick',
k: 'K-linjediagram',
heatmap: 'Värmekarta',
map: 'Karta',
parallel: 'Parallella koordinater',
lines: 'Linjediagram',
graph: 'Relationsgraf',
sankey: 'Sankeydiagram',
funnel: 'Trattdiagram',
gauge: 'Mätare',
pictorialBar: 'Bildstapel',
themeRiver: 'Tematisk flod',
sunburst: 'Solburstdiagram',
custom: 'Anpassat',
chart: 'Diagram',
},
},
aria: {
general: {
withTitle: 'Detta är ett diagram om "{title}"',
withoutTitle: 'Detta är ett diagram',
},
series: {
single: {
prefix: '',
withName: ' med typnamn {name}.',
withoutName: ' med typ {seriesType}.',
},
multiple: {
prefix: '. Det består av {seriesCount} serier.',
withName: ' Serien {seriesId} är en {seriesType} som representerar {seriesName}.',
withoutName: ' Serien {seriesId} är en {seriesType}.',
separator: {
middle: '',
end: '',
},
},
},
data: {
allData: 'Data är som följer: ',
partialData: 'De första {displayCnt} objekten är: ',
withName: 'datavärdet för {name} är {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. ',
},
},
},
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langSV.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Swedish.
*/
var localeObj = {
time: {
month: [
'januari', 'februari', 'mars', 'april', 'maj', 'juni',
'juli', 'augusti', 'september', 'oktober', 'november', 'december',
],
monthAbbr: [
'jan', 'feb', 'mar', 'apr', 'maj', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'dec',
],
dayOfWeek: [
'söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag',
],
dayOfWeekAbbr: [
'sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör',
],
},
legend: {
selector: {
all: 'Alla',
inverse: 'Omvänd',
},
},
toolbox: {
brush: {
title: {
rect: 'Rektangelurval',
polygon: 'Lassomarkering',
lineX: 'Vågrätt urval',
lineY: 'Lodrätt urval',
keep: 'Behåll urval',
clear: 'Rensa urval',
},
},
dataView: {
title: 'Datavy',
lang: ['Datavy', 'Stäng', 'Uppdatera'],
},
dataZoom: {
title: {
zoom: 'Zooma',
back: 'Återställ zoom',
},
},
magicType: {
title: {
line: 'Byt till linjediagram',
bar: 'Byt till stapeldiagram',
stack: 'Stapla',
tiled: 'Sida vid sida',
},
},
restore: {
title: 'Återställ',
},
saveAsImage: {
title: 'Spara som bild',
lang: ['Högerklicka för att spara bild'],
},
},
series: {
typeNames: {
pie: 'Cirkeldiagram',
bar: 'Stapeldiagram',
line: 'Linjediagram',
scatter: 'Punktdiagram',
effectScatter: 'Punktdiagram med rippeleffekt',
radar: 'Radardiagram',
tree: 'Träd',
treemap: 'Trädkarta',
boxplot: 'Lådagram',
candlestick: 'Candlestick',
k: 'K-linjediagram',
heatmap: 'Värmekarta',
map: 'Karta',
parallel: 'Parallella koordinater',
lines: 'Linjediagram',
graph: 'Relationsgraf',
sankey: 'Sankeydiagram',
funnel: 'Trattdiagram',
gauge: 'Mätare',
pictorialBar: 'Bildstapel',
themeRiver: 'Tematisk flod',
sunburst: 'Solburstdiagram',
custom: 'Anpassat',
chart: 'Diagram',
},
},
aria: {
general: {
withTitle: 'Detta är ett diagram om "{title}"',
withoutTitle: 'Detta är ett diagram',
},
series: {
single: {
prefix: '',
withName: ' med typnamn {name}.',
withoutName: ' med typ {seriesType}.',
},
multiple: {
prefix: '. Det består av {seriesCount} serier.',
withName: ' Serien {seriesId} är en {seriesType} som representerar {seriesName}.',
withoutName: ' Serien {seriesId} är en {seriesType}.',
separator: {
middle: '',
end: '',
},
},
},
data: {
allData: 'Data är som följer: ',
partialData: 'De första {displayCnt} objekten är: ',
withName: 'datavärdet för {name} är {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. ',
},
},
},
};
echarts.registerLocale('SV', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langTH-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
var localeObj = {
time: {
month: [
'มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน',
'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม'
],
monthAbbr: [
'ม.ค.', 'ก.พ.', 'มี.ค.', 'เม.ย.', 'พ.ค.', 'มิ.ย.',
'ก.ค.', 'ส.ค.', 'ก.ย.', 'ต.ค.', 'พ.ย.', 'ธ.ค.'
],
dayOfWeek: [
'วันอาทิตย์', 'วันจันทร์', 'วันอังคาร', 'วันพุธ', 'วันพฤหัสบดี', 'วันศุกร์', 'วันเสาร์'
],
dayOfWeekAbbr: [
'อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.'
]
},
legend: {
selector: {
all: 'ทั้งหมด',
inverse: 'ผกผัน'
}
},
toolbox: {
brush: {
title: {
rect: 'ตัวเลือกแบบกล่อง',
polygon: 'ตัวเลือกแบบบ่วงบาศ',
lineX: 'ตัวเลือกแบบแนวนอน',
lineY: 'ตัวเลือกแบบแนวตั้ง',
keep: 'บันทึกตัวเลือก',
clear: 'ล้างตัวเลือก'
}
},
dataView: {
title: 'มุมมองข้อมูล',
lang: ['มุมมองข้อมูล', 'ปิด', 'รีเฟรช']
},
dataZoom: {
title: {
zoom: 'ซูม',
back: 'ตั้งซูมใหม่'
}
},
magicType: {
title: {
line: 'สวิตซ์แบบแผนภาพเส้น',
bar: 'สวิตซ์แบบแผนภาพแท่ง',
stack: 'กองไว้',
tiled: 'แยกไว้'
}
},
restore: {
title: 'ตั้งค่าใหม่'
},
saveAsImage: {
title: 'บันทึกไปยังรูปภาพ',
lang: ['คลิกขวาเพื่อบันทึกรูปภาพ']
}
},
series: {
typeNames: {
pie: 'แผนภูมิวงกลม',
bar: 'แผนภูมิแท่ง',
line: 'แผนภูมิเส้น',
scatter: 'แผนภูมิกระจาย',
effectScatter: 'แผนภูมิกระจายคลื่น',
radar: 'แผนภูมิเรดาร์',
tree: 'ต้นไม้',
treemap: 'แผนที่ต้นไม้',
boxplot: 'แผนภูมิกล่อง',
candlestick: 'แผนภูมิเทียน',
k: 'แผนภูมิเส้น K',
heatmap: 'แผนที่ความร้อน',
map: 'แผนที่',
parallel: 'แผนที่พิกัดขนาน',
lines: 'กราฟเส้น',
graph: 'กราฟความสัมพันธ์',
sankey: 'แผนภูมิซันกีย์',
funnel: 'แผนภูมิกรวย',
gauge: 'เกจ',
pictorialBar: 'แผนภูมิแท่งภาพ',
themeRiver: 'แผนที่แม่น้ำธีม',
sunburst: 'Sunburst',
custom: 'แผนภูมิที่กำหนดเอง',
chart: 'แผนภูมิ'
}
},
aria: {
general: {
withTitle: 'นี่คือแผนภูมิเกี่ยวกับ “{title}”',
withoutTitle: 'นี่คือแผนภูมิ'
},
series: {
single: {
prefix: '',
withName: ' ด้วยประเภท {seriesType} ชื่อ {seriesName} ',
withoutName: ' ด้วยประเภท {seriesType} '
},
multiple: {
prefix: ' มีทั้งหมด {seriesCount} ชุดข้อมูล ',
withName: ' ชุดข้อมูลที่ {seriesId} เป็นประเภท {seriesType} แทน {seriesName} ',
withoutName: ' ชุดข้อมูลที่ {seriesId} เป็นประเภท {seriesType} ',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'ข้อมูลดังต่อไปนี้: ',
partialData: 'ข้อมูล {displayCnt} รายการแรกคือ: ',
withName: 'ข้อมูลสำหรับ {name} คือ {value} ',
withoutName: '{value} ',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langTH.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var localeObj = {
time: {
month: [
'มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน',
'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม'
],
monthAbbr: [
'ม.ค.', 'ก.พ.', 'มี.ค.', 'เม.ย.', 'พ.ค.', 'มิ.ย.',
'ก.ค.', 'ส.ค.', 'ก.ย.', 'ต.ค.', 'พ.ย.', 'ธ.ค.'
],
dayOfWeek: [
'วันอาทิตย์', 'วันจันทร์', 'วันอังคาร', 'วันพุธ', 'วันพฤหัสบดี', 'วันศุกร์', 'วันเสาร์'
],
dayOfWeekAbbr: [
'อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.'
]
},
legend: {
selector: {
all: 'ทั้งหมด',
inverse: 'ผกผัน'
}
},
toolbox: {
brush: {
title: {
rect: 'ตัวเลือกแบบกล่อง',
polygon: 'ตัวเลือกแบบบ่วงบาศ',
lineX: 'ตัวเลือกแบบแนวนอน',
lineY: 'ตัวเลือกแบบแนวตั้ง',
keep: 'บันทึกตัวเลือก',
clear: 'ล้างตัวเลือก'
}
},
dataView: {
title: 'มุมมองข้อมูล',
lang: ['มุมมองข้อมูล', 'ปิด', 'รีเฟรช']
},
dataZoom: {
title: {
zoom: 'ซูม',
back: 'ตั้งซูมใหม่'
}
},
magicType: {
title: {
line: 'สวิตซ์แบบแผนภาพเส้น',
bar: 'สวิตซ์แบบแผนภาพแท่ง',
stack: 'กองไว้',
tiled: 'แยกไว้'
}
},
restore: {
title: 'ตั้งค่าใหม่'
},
saveAsImage: {
title: 'บันทึกไปยังรูปภาพ',
lang: ['คลิกขวาเพื่อบันทึกรูปภาพ']
}
},
series: {
typeNames: {
pie: 'แผนภูมิวงกลม',
bar: 'แผนภูมิแท่ง',
line: 'แผนภูมิเส้น',
scatter: 'แผนภูมิกระจาย',
effectScatter: 'แผนภูมิกระจายคลื่น',
radar: 'แผนภูมิเรดาร์',
tree: 'ต้นไม้',
treemap: 'แผนที่ต้นไม้',
boxplot: 'แผนภูมิกล่อง',
candlestick: 'แผนภูมิเทียน',
k: 'แผนภูมิเส้น K',
heatmap: 'แผนที่ความร้อน',
map: 'แผนที่',
parallel: 'แผนที่พิกัดขนาน',
lines: 'กราฟเส้น',
graph: 'กราฟความสัมพันธ์',
sankey: 'แผนภูมิซันกีย์',
funnel: 'แผนภูมิกรวย',
gauge: 'เกจ',
pictorialBar: 'แผนภูมิแท่งภาพ',
themeRiver: 'แผนที่แม่น้ำธีม',
sunburst: 'Sunburst',
custom: 'แผนภูมิที่กำหนดเอง',
chart: 'แผนภูมิ'
}
},
aria: {
general: {
withTitle: 'นี่คือแผนภูมิเกี่ยวกับ “{title}”',
withoutTitle: 'นี่คือแผนภูมิ'
},
series: {
single: {
prefix: '',
withName: ' ด้วยประเภท {seriesType} ชื่อ {seriesName} ',
withoutName: ' ด้วยประเภท {seriesType} '
},
multiple: {
prefix: ' มีทั้งหมด {seriesCount} ชุดข้อมูล ',
withName: ' ชุดข้อมูลที่ {seriesId} เป็นประเภท {seriesType} แทน {seriesName} ',
withoutName: ' ชุดข้อมูลที่ {seriesId} เป็นประเภท {seriesType} ',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'ข้อมูลดังต่อไปนี้: ',
partialData: 'ข้อมูล {displayCnt} รายการแรกคือ: ',
withName: 'ข้อมูลสำหรับ {name} คือ {value} ',
withoutName: '{value} ',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('TH', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langTR-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Türkçe.
*/
var localeObj = {
time: {
month: [
'Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran',
'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'
],
monthAbbr: [
'Oca', 'Şub', 'Mar', 'Nis', 'May', 'Haz',
'Tem', 'Agu', 'Eyl', 'Eki', 'Kas', 'Ara'
],
dayOfWeek: [
'Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'
],
dayOfWeekAbbr: [
'Paz', 'Pzt', 'Sal', 'Çrş', 'Prş', 'Cum', 'Cts'
]
},
legend: {
selector: {
all: 'Tümünü Seç',
inverse: 'Seçimi Ters Çevir'
}
},
toolbox: {
brush: {
title: {
rect: 'Dikdörtgen Seçimi',
polygon: 'Kement Seçimi',
lineX: 'Yatay Seçim',
lineY: 'Dikey Seçim',
keep: 'Seçimi Koru',
clear: 'Seçimi Sil'
}
},
dataView: {
title: 'Veri Görünümü',
lang: ['Veri Görünümü', 'Kapat', 'Yenile']
},
dataZoom: {
title: {
zoom: 'Yakınlaştır/Uzaklaştır',
back: 'Yakınlaştırmayı Sıfırla'
}
},
magicType: {
title: {
line: 'Çizgisel Grafiğe Çevir',
bar: 'Çubuk Grafiğe Çevir',
stack: 'Yığın',
tiled: 'Blok'
}
},
restore: {
title: 'Eski Haline Getir'
},
saveAsImage: {
title: 'Resim Olarak Kaydet',
lang: ['Resim Olarak Kaydetmek için Sağ Tıklayın']
}
},
series: {
typeNames: {
pie: 'Pasta Grafiği',
bar: 'Çubuk Grafik',
line: 'Çizgi Grafiği',
scatter: 'Dağılım Grafiği',
effectScatter: 'Dalga Efekt Dağılım Grafiği',
radar: 'Radar Grafiği',
tree: 'Ağaç Grafiği',
treemap: 'Ağaç Haritası',
boxplot: 'Kutu Grafiği',
candlestick: 'Şamdan Grafik',
k: 'K Çizgi Grafiği',
heatmap: 'Sıcaklık Haritası',
map: 'Harita',
parallel: 'Paralel Koordinat Haritası',
lines: 'Çizgisel Grafik',
graph: 'İlişkisel Grafik',
sankey: 'Sankey Diagramı',
funnel: 'Huni Grafik',
gauge: 'Gösterge',
pictorialBar: 'Resimli Çubuk Grafiği',
themeRiver: 'Akış Haritası',
sunburst: 'Güeş Patlaması Tablosu',
custom: 'Özel grafik',
chart: 'Grafiği'
}
},
aria: {
general: {
withTitle: 'Bu grafik "{title}" içindir.',
withoutTitle: 'Bu Bir Grafiktir.'
},
series: {
single: {
prefix: '',
withName: ' Grafik Türü {seriesType} ve {seriesName} gösteriyor.',
withoutName: ' {seriesType} tipinde grafik.'
},
multiple: {
prefix: '. {seriesCount} kadar grafik sayısından oluşur.',
withName: ' {seriesId}.serisi {seriesName} adını temsil eden bir {seriesType} temsil eder.',
withoutName: ' {seriesId}. serisi bir {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Veriler Aşağıdaki Gibidir: ',
partialData: 'İlk {displayCnt} öğesi: ',
withName: ' {value} için {name}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langTR.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Türkçe.
*/
var localeObj = {
time: {
month: [
'Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran',
'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'
],
monthAbbr: [
'Oca', 'Şub', 'Mar', 'Nis', 'May', 'Haz',
'Tem', 'Agu', 'Eyl', 'Eki', 'Kas', 'Ara'
],
dayOfWeek: [
'Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'
],
dayOfWeekAbbr: [
'Paz', 'Pzt', 'Sal', 'Çrş', 'Prş', 'Cum', 'Cts'
]
},
legend: {
selector: {
all: 'Tümünü Seç',
inverse: 'Seçimi Ters Çevir'
}
},
toolbox: {
brush: {
title: {
rect: 'Dikdörtgen Seçimi',
polygon: 'Kement Seçimi',
lineX: 'Yatay Seçim',
lineY: 'Dikey Seçim',
keep: 'Seçimi Koru',
clear: 'Seçimi Sil'
}
},
dataView: {
title: 'Veri Görünümü',
lang: ['Veri Görünümü', 'Kapat', 'Yenile']
},
dataZoom: {
title: {
zoom: 'Yakınlaştır/Uzaklaştır',
back: 'Yakınlaştırmayı Sıfırla'
}
},
magicType: {
title: {
line: 'Çizgisel Grafiğe Çevir',
bar: 'Çubuk Grafiğe Çevir',
stack: 'Yığın',
tiled: 'Blok'
}
},
restore: {
title: 'Eski Haline Getir'
},
saveAsImage: {
title: 'Resim Olarak Kaydet',
lang: ['Resim Olarak Kaydetmek için Sağ Tıklayın']
}
},
series: {
typeNames: {
pie: 'Pasta Grafiği',
bar: 'Çubuk Grafik',
line: 'Çizgi Grafiği',
scatter: 'Dağılım Grafiği',
effectScatter: 'Dalga Efekt Dağılım Grafiği',
radar: 'Radar Grafiği',
tree: 'Ağaç Grafiği',
treemap: 'Ağaç Haritası',
boxplot: 'Kutu Grafiği',
candlestick: 'Şamdan Grafik',
k: 'K Çizgi Grafiği',
heatmap: 'Sıcaklık Haritası',
map: 'Harita',
parallel: 'Paralel Koordinat Haritası',
lines: 'Çizgisel Grafik',
graph: 'İlişkisel Grafik',
sankey: 'Sankey Diagramı',
funnel: 'Huni Grafik',
gauge: 'Gösterge',
pictorialBar: 'Resimli Çubuk Grafiği',
themeRiver: 'Akış Haritası',
sunburst: 'Güeş Patlaması Tablosu',
custom: 'Özel grafik',
chart: 'Grafiği'
}
},
aria: {
general: {
withTitle: 'Bu grafik "{title}" içindir.',
withoutTitle: 'Bu Bir Grafiktir.'
},
series: {
single: {
prefix: '',
withName: ' Grafik Türü {seriesType} ve {seriesName} gösteriyor.',
withoutName: ' {seriesType} tipinde grafik.'
},
multiple: {
prefix: '. {seriesCount} kadar grafik sayısından oluşur.',
withName: ' {seriesId}.serisi {seriesName} adını temsil eden bir {seriesType} temsil eder.',
withoutName: ' {seriesId}. serisi bir {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Veriler Aşağıdaki Gibidir: ',
partialData: 'İlk {displayCnt} öğesi: ',
withName: ' {value} için {name}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('TR', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langUK-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Ukrainian.
*/
var localeObj = {
time: {
month: [
'Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень',
'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень'
],
monthAbbr: [
'Січ', 'Лют', 'Бер', 'Кві', 'Тра', 'Чер',
'Лип', 'Сер', 'Вер', 'Жов', 'Лис', 'Гру'
],
dayOfWeek: [
'Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П\'ятниця', 'Субота'
],
dayOfWeekAbbr: [
'нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'
]
},
legend: {
selector: {
all: 'Все',
inverse: 'Обернути'
}
},
toolbox: {
brush: {
title: {
rect: 'Выділити область',
polygon: 'Інструмент «Ласо»',
lineX: 'Горизонтальне виділення',
lineY: 'Вертикальне виділення',
keep: 'Залишити обране',
clear: 'Очистити обране'
}
},
dataView: {
title: 'Дані',
lang: ['Дані', 'Закрити', 'Оновити']
},
dataZoom: {
title: {
zoom: 'Збільшити',
back: 'Скасувати збільшення'
}
},
magicType: {
title: {
line: 'Переключитися на лінійний графік',
bar: 'Переключитися на стовпчикову діаграму',
stack: 'Стопка',
tiled: 'Плитка'
}
},
restore: {
title: 'Відновити'
},
saveAsImage: {
title: 'Зберегти зображення',
lang: ['Правий клік, щоб зберегти зображення']
}
},
series: {
typeNames: {
pie: 'Кругова діаграма',
bar: 'Стовпчикова діаграма',
line: 'Лінійний графік',
scatter: 'Точкова діаграма',
effectScatter: 'Точкова діаграма з хвилями',
radar: 'Пелюсткова діаграма',
tree: 'Дерево',
treemap: 'Пласке дерево',
boxplot: 'Ящик з вусами',
candlestick: 'Свічний графік',
k: 'Графік К-ліній',
heatmap: 'Теплова мапа',
map: 'Мапа',
parallel: 'Діаграма паралельних координат',
lines: 'Лінійний граф',
graph: 'Граф отношений',
sankey: 'Діаграма Санкей',
funnel: 'Воронкообразна діаграма',
gauge: 'Шкала',
pictorialBar: 'Стовпчик-картинка',
themeRiver: 'Тематична ріка',
sunburst: 'Сонячне проміння',
custom: 'Спеціальна діаграма',
chart: 'діаграма'
}
},
aria: {
general: {
withTitle: 'Це графік, що відрображує "{title}"',
withoutTitle: 'Це графік'
},
series: {
single: {
prefix: '',
withName: ' з типом {seriesType} та іменем {seriesName}.',
withoutName: ' з типом {seriesType}.'
},
multiple: {
prefix: '. Він складається з {seriesCount} серій.',
withName:
' Серія {seriesId} має тип {seriesType} та відображає {seriesName}.',
withoutName: ' Серія {seriesId} має тип {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Дані такі: ',
partialData: 'Перші {displayCnt} елементів: ',
withName: 'значення для {name} — {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langUK.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Ukrainian.
*/
var localeObj = {
time: {
month: [
'Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень',
'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень'
],
monthAbbr: [
'Січ', 'Лют', 'Бер', 'Кві', 'Тра', 'Чер',
'Лип', 'Сер', 'Вер', 'Жов', 'Лис', 'Гру'
],
dayOfWeek: [
'Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П\'ятниця', 'Субота'
],
dayOfWeekAbbr: [
'нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'
]
},
legend: {
selector: {
all: 'Все',
inverse: 'Обернути'
}
},
toolbox: {
brush: {
title: {
rect: 'Выділити область',
polygon: 'Інструмент «Ласо»',
lineX: 'Горизонтальне виділення',
lineY: 'Вертикальне виділення',
keep: 'Залишити обране',
clear: 'Очистити обране'
}
},
dataView: {
title: 'Дані',
lang: ['Дані', 'Закрити', 'Оновити']
},
dataZoom: {
title: {
zoom: 'Збільшити',
back: 'Скасувати збільшення'
}
},
magicType: {
title: {
line: 'Переключитися на лінійний графік',
bar: 'Переключитися на стовпчикову діаграму',
stack: 'Стопка',
tiled: 'Плитка'
}
},
restore: {
title: 'Відновити'
},
saveAsImage: {
title: 'Зберегти зображення',
lang: ['Правий клік, щоб зберегти зображення']
}
},
series: {
typeNames: {
pie: 'Кругова діаграма',
bar: 'Стовпчикова діаграма',
line: 'Лінійний графік',
scatter: 'Точкова діаграма',
effectScatter: 'Точкова діаграма з хвилями',
radar: 'Пелюсткова діаграма',
tree: 'Дерево',
treemap: 'Пласке дерево',
boxplot: 'Ящик з вусами',
candlestick: 'Свічний графік',
k: 'Графік К-ліній',
heatmap: 'Теплова мапа',
map: 'Мапа',
parallel: 'Діаграма паралельних координат',
lines: 'Лінійний граф',
graph: 'Граф отношений',
sankey: 'Діаграма Санкей',
funnel: 'Воронкообразна діаграма',
gauge: 'Шкала',
pictorialBar: 'Стовпчик-картинка',
themeRiver: 'Тематична ріка',
sunburst: 'Сонячне проміння',
custom: 'Спеціальна діаграма',
chart: 'діаграма'
}
},
aria: {
general: {
withTitle: 'Це графік, що відрображує "{title}"',
withoutTitle: 'Це графік'
},
series: {
single: {
prefix: '',
withName: ' з типом {seriesType} та іменем {seriesName}.',
withoutName: ' з типом {seriesType}.'
},
multiple: {
prefix: '. Він складається з {seriesCount} серій.',
withName:
' Серія {seriesId} має тип {seriesType} та відображає {seriesName}.',
withoutName: ' Серія {seriesId} має тип {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Дані такі: ',
partialData: 'Перші {displayCnt} елементів: ',
withName: 'значення для {name} — {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('UK', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langVI-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Vietnamese.
*/
var localeObj = {
time: {
month: [
'Tháng 1',
'Tháng 2',
'Tháng 3',
'Tháng 4',
'Tháng 5',
'Tháng 6',
'Tháng 7',
'Tháng 8',
'Tháng 9',
'Tháng 10',
'Tháng 11',
'Tháng 12'
],
monthAbbr: [
'Th01',
'Th02',
'Th03',
'Th04',
'Th05',
'Th06',
'Th07',
'Th08',
'Th09',
'Th10',
'Th11',
'Th12'
],
dayOfWeek: [
'Chủ nhật',
'Thứ hai',
'Thứ ba',
'Thứ tư',
'Thứ năm',
'Thứ sáu',
'Thứ bảy'
],
dayOfWeekAbbr: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7']
},
legend: {
selector: {
all: 'Tất cả',
inverse: 'Ngược lại'
}
},
toolbox: {
brush: {
title: {
rect: 'Chọn theo ô',
polygon: 'Chọn theo đường bất kỳ',
lineX: 'Chọn theo chiều ngang',
lineY: 'Chọn theo chiều dọc',
keep: 'Giữ đã chọn',
clear: 'Bỏ đã chọn'
}
},
dataView: {
title: 'Xem dữ liệu',
lang: ['Xem dữ liệu', 'Đóng', 'Làm mới']
},
dataZoom: {
title: {
zoom: 'Phóng to',
back: 'Bỏ phóng to'
}
},
magicType: {
title: {
line: 'Chuyển sang biểu đồ đường',
bar: 'Chuyển sang biểu đồ cột',
stack: 'Xếp chồng',
tiled: 'Lát'
}
},
restore: {
title: 'Khôi phục'
},
saveAsImage: {
title: 'Lưu thành ảnh',
lang: ['Bấm phải chuột để lưu ảnh']
}
},
series: {
typeNames: {
pie: 'Biều đồ tròn',
bar: 'Biểu đồ cột',
line: 'Biểu đồ đường',
scatter: 'Biểu đồ phân tán',
effectScatter: 'Biểu đồ gợn sóng',
radar: 'Biểu đồ Radar',
tree: 'Biểu đồ cây',
treemap: 'Sơ đồ cây',
boxplot: 'Biểu đồ hộp',
candlestick: 'Biều đồ nến',
k: 'Biểu đồ đường K',
heatmap: 'Bản đồ nhiệt',
map: 'Bản đồ',
parallel: 'Bản đồ tọa độ song song',
lines: 'Biểu đồ đường',
graph: 'Đồ thị quan hệ',
sankey: 'Sơ đồ dòng',
funnel: 'Biểu đồ hình phễu',
gauge: 'Biểu đồ cung tròn',
pictorialBar: 'Biểu diễn hình ảnh',
themeRiver: 'Bản đồ sông',
sunburst: 'Biểu đồ bậc',
custom: 'Biểu đồ tùy chỉnh',
chart: 'Đồ thị'
}
},
aria: {
general: {
withTitle: 'Đây là biểu đồ "{title}"',
withoutTitle: 'Đây là biểu đồ'
},
series: {
single: {
prefix: '',
withName: ' với kiểu {seriesType} tên là {seriesName}.',
withoutName: ' với kiểu {seriesType}.'
},
multiple: {
prefix: '. Nó bao gồm {seriesCount} chuỗi.',
withName:
' Chuỗi {seriesId} có kiểu {seriesType} đại diện cho {seriesName}.',
withoutName: ' Chuỗi {seriesId} có kiểu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Dữ liệu như sau: ',
partialData: 'Các mục {displayCnt} đầu tiên là: ',
withName: 'dữ liệu cho {name} là {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langVI.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Vietnamese.
*/
var localeObj = {
time: {
month: [
'Tháng 1',
'Tháng 2',
'Tháng 3',
'Tháng 4',
'Tháng 5',
'Tháng 6',
'Tháng 7',
'Tháng 8',
'Tháng 9',
'Tháng 10',
'Tháng 11',
'Tháng 12'
],
monthAbbr: [
'Th01',
'Th02',
'Th03',
'Th04',
'Th05',
'Th06',
'Th07',
'Th08',
'Th09',
'Th10',
'Th11',
'Th12'
],
dayOfWeek: [
'Chủ nhật',
'Thứ hai',
'Thứ ba',
'Thứ tư',
'Thứ năm',
'Thứ sáu',
'Thứ bảy'
],
dayOfWeekAbbr: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7']
},
legend: {
selector: {
all: 'Tất cả',
inverse: 'Ngược lại'
}
},
toolbox: {
brush: {
title: {
rect: 'Chọn theo ô',
polygon: 'Chọn theo đường bất kỳ',
lineX: 'Chọn theo chiều ngang',
lineY: 'Chọn theo chiều dọc',
keep: 'Giữ đã chọn',
clear: 'Bỏ đã chọn'
}
},
dataView: {
title: 'Xem dữ liệu',
lang: ['Xem dữ liệu', 'Đóng', 'Làm mới']
},
dataZoom: {
title: {
zoom: 'Phóng to',
back: 'Bỏ phóng to'
}
},
magicType: {
title: {
line: 'Chuyển sang biểu đồ đường',
bar: 'Chuyển sang biểu đồ cột',
stack: 'Xếp chồng',
tiled: 'Lát'
}
},
restore: {
title: 'Khôi phục'
},
saveAsImage: {
title: 'Lưu thành ảnh',
lang: ['Bấm phải chuột để lưu ảnh']
}
},
series: {
typeNames: {
pie: 'Biều đồ tròn',
bar: 'Biểu đồ cột',
line: 'Biểu đồ đường',
scatter: 'Biểu đồ phân tán',
effectScatter: 'Biểu đồ gợn sóng',
radar: 'Biểu đồ Radar',
tree: 'Biểu đồ cây',
treemap: 'Sơ đồ cây',
boxplot: 'Biểu đồ hộp',
candlestick: 'Biều đồ nến',
k: 'Biểu đồ đường K',
heatmap: 'Bản đồ nhiệt',
map: 'Bản đồ',
parallel: 'Bản đồ tọa độ song song',
lines: 'Biểu đồ đường',
graph: 'Đồ thị quan hệ',
sankey: 'Sơ đồ dòng',
funnel: 'Biểu đồ hình phễu',
gauge: 'Biểu đồ cung tròn',
pictorialBar: 'Biểu diễn hình ảnh',
themeRiver: 'Bản đồ sông',
sunburst: 'Biểu đồ bậc',
custom: 'Biểu đồ tùy chỉnh',
chart: 'Đồ thị'
}
},
aria: {
general: {
withTitle: 'Đây là biểu đồ "{title}"',
withoutTitle: 'Đây là biểu đồ'
},
series: {
single: {
prefix: '',
withName: ' với kiểu {seriesType} tên là {seriesName}.',
withoutName: ' với kiểu {seriesType}.'
},
multiple: {
prefix: '. Nó bao gồm {seriesCount} chuỗi.',
withName:
' Chuỗi {seriesId} có kiểu {seriesType} đại diện cho {seriesName}.',
withoutName: ' Chuỗi {seriesId} có kiểu {seriesType}.',
separator: {
middle: '',
end: ''
}
}
},
data: {
allData: 'Dữ liệu như sau: ',
partialData: 'Các mục {displayCnt} đầu tiên là: ',
withName: 'dữ liệu cho {name} là {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. '
}
}
}
};
echarts.registerLocale('VI', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langZH-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
var localeObj = {
time: {
month: [
'一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'
],
monthAbbr: [
'1月', '2月', '3月', '4月', '5月', '6月',
'7月', '8月', '9月', '10月', '11月', '12月'
],
dayOfWeek: [
'星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'
],
dayOfWeekAbbr: [
'日', '一', '二', '三', '四', '五', '六'
]
},
legend: {
selector: {
all: '全选',
inverse: '反选'
}
},
toolbox: {
brush: {
title: {
rect: '矩形选择',
polygon: '圈选',
lineX: '横向选择',
lineY: '纵向选择',
keep: '保持选择',
clear: '清除选择'
}
},
dataView: {
title: '数据视图',
lang: ['数据视图', '关闭', '刷新']
},
dataZoom: {
title: {
zoom: '区域缩放',
back: '区域缩放还原'
}
},
magicType: {
title: {
line: '切换为折线图',
bar: '切换为柱状图',
stack: '切换为堆叠',
tiled: '切换为平铺'
}
},
restore: {
title: '还原'
},
saveAsImage: {
title: '保存为图片',
lang: ['右键另存为图片']
}
},
series: {
typeNames: {
pie: '饼图',
bar: '柱状图',
line: '折线图',
scatter: '散点图',
effectScatter: '涟漪散点图',
radar: '雷达图',
tree: '树图',
treemap: '矩形树图',
boxplot: '箱型图',
candlestick: 'K线图',
k: 'K线图',
heatmap: '热力图',
map: '地图',
parallel: '平行坐标图',
lines: '线图',
graph: '关系图',
sankey: '桑基图',
funnel: '漏斗图',
gauge: '仪表盘图',
pictorialBar: '象形柱图',
themeRiver: '主题河流图',
sunburst: '旭日图',
custom: '自定义图表',
chart: '图表'
}
},
aria: {
general: {
withTitle: '这是一个关于“{title}”的图表。',
withoutTitle: '这是一个图表,'
},
series: {
single: {
prefix: '',
withName: '图表类型是{seriesType},表示{seriesName}。',
withoutName: '图表类型是{seriesType}。'
},
multiple: {
prefix: '它由{seriesCount}个图表系列组成。',
withName: '第{seriesId}个系列是一个表示{seriesName}的{seriesType},',
withoutName: '第{seriesId}个系列是一个{seriesType},',
separator: {
middle: ';',
end: '。'
}
}
},
data: {
allData: '其数据是——',
partialData: '其中,前{displayCnt}项是——',
withName: '{name}的数据是{value}',
withoutName: '{value}',
separator: {
middle: ',',
end: ''
}
}
}
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langZH.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var localeObj = {
time: {
month: [
'一月', '二月', '三月', '四月', '五月', '六月',
'七月', '八月', '九月', '十月', '十一月', '十二月'
],
monthAbbr: [
'1月', '2月', '3月', '4月', '5月', '6月',
'7月', '8月', '9月', '10月', '11月', '12月'
],
dayOfWeek: [
'星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'
],
dayOfWeekAbbr: [
'日', '一', '二', '三', '四', '五', '六'
]
},
legend: {
selector: {
all: '全选',
inverse: '反选'
}
},
toolbox: {
brush: {
title: {
rect: '矩形选择',
polygon: '圈选',
lineX: '横向选择',
lineY: '纵向选择',
keep: '保持选择',
clear: '清除选择'
}
},
dataView: {
title: '数据视图',
lang: ['数据视图', '关闭', '刷新']
},
dataZoom: {
title: {
zoom: '区域缩放',
back: '区域缩放还原'
}
},
magicType: {
title: {
line: '切换为折线图',
bar: '切换为柱状图',
stack: '切换为堆叠',
tiled: '切换为平铺'
}
},
restore: {
title: '还原'
},
saveAsImage: {
title: '保存为图片',
lang: ['右键另存为图片']
}
},
series: {
typeNames: {
pie: '饼图',
bar: '柱状图',
line: '折线图',
scatter: '散点图',
effectScatter: '涟漪散点图',
radar: '雷达图',
tree: '树图',
treemap: '矩形树图',
boxplot: '箱型图',
candlestick: 'K线图',
k: 'K线图',
heatmap: '热力图',
map: '地图',
parallel: '平行坐标图',
lines: '线图',
graph: '关系图',
sankey: '桑基图',
funnel: '漏斗图',
gauge: '仪表盘图',
pictorialBar: '象形柱图',
themeRiver: '主题河流图',
sunburst: '旭日图',
custom: '自定义图表',
chart: '图表'
}
},
aria: {
general: {
withTitle: '这是一个关于“{title}”的图表。',
withoutTitle: '这是一个图表,'
},
series: {
single: {
prefix: '',
withName: '图表类型是{seriesType},表示{seriesName}。',
withoutName: '图表类型是{seriesType}。'
},
multiple: {
prefix: '它由{seriesCount}个图表系列组成。',
withName: '第{seriesId}个系列是一个表示{seriesName}的{seriesType},',
withoutName: '第{seriesId}个系列是一个{seriesType},',
separator: {
middle: ';',
end: '。'
}
}
},
data: {
allData: '其数据是——',
partialData: '其中,前{displayCnt}项是——',
withName: '{name}的数据是{value}',
withoutName: '{value}',
separator: {
middle: ',',
end: ''
}
}
}
};
echarts.registerLocale('ZH', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langnb-NO-obj.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports);
} else {
// Browser globals
factory({});
}
})(this, function(exports) {
/**
* Language: Norwegian Bokmål.
*/
var localeObj = {
time: {
month: [
'januar', 'februar', 'mars', 'april', 'mai', 'juni',
'juli', 'august', 'september', 'oktober', 'november', 'desember',
],
monthAbbr: [
'jan', 'feb', 'mar', 'apr', 'mai', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'des',
],
dayOfWeek: [
'søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag',
],
dayOfWeekAbbr: ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
},
legend: {
selector: {
all: 'Alle',
inverse: 'Omvendt',
},
},
toolbox: {
brush: {
title: {
rect: 'Boksutvalg',
polygon: 'Lassomarkering',
lineX: 'Vannrett utvalg',
lineY: 'Loddrett utvalg',
keep: 'Behold utvalg',
clear: 'Fjern utvalg',
},
},
dataView: {
title: 'Datavisning',
lang: ['Datavisning', 'Lukk', 'Oppfrisk'],
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Tilbakestill zoom',
},
},
magicType: {
title: {
line: 'Bytt til linjediagram',
bar: 'Bytt til stolpediagram',
stack: 'Stable',
tiled: 'Side ved side',
},
},
restore: {
title: 'Tilbakestill',
},
saveAsImage: {
title: 'Lagre som bilde',
lang: ['Høyreklikk for å lagre som bilde'],
},
},
series: {
typeNames: {
pie: 'Sektordiagram',
bar: 'Stolpediagram',
line: 'Linjediagram',
scatter: 'Spredningsplott',
effectScatter: 'Krusningsspredningsplott',
radar: 'Radardiagram',
tree: 'Tre',
treemap: 'Trekart',
boxplot: 'Boksplot',
candlestick: 'Candlestick',
k: 'K-linjediagram',
heatmap: 'Varmekart',
map: 'Kart',
parallel: 'Parallelle koordinater',
lines: 'Linjediagram',
graph: 'Relasjonsgraf',
sankey: 'Sankey-diagram',
funnel: 'Traktdiagram',
gauge: 'Måler',
pictorialBar: 'Bildestolper',
themeRiver: 'Tematisk elvediagram',
sunburst: 'Solstrålediagram',
custom: 'Tilpasset',
chart: 'Diagram',
},
},
aria: {
general: {
withTitle: 'Dette er et diagram om "{title}"',
withoutTitle: 'Dette er et diagram',
},
series: {
single: {
prefix: '',
withName: ' med type {seriesType} ved navn {seriesName}.',
withoutName: ' med type {seriesType}.',
},
multiple: {
prefix: '. Det består av {seriesCount} serier.',
withName:
' Serie {seriesId} er av typen {seriesType} som representerer {seriesName}.',
withoutName: ' Serie {seriesId} er av typen {seriesType}.',
separator: {
middle: '',
end: '',
},
},
},
data: {
allData: 'Dataene er som følger: ',
partialData: 'De første {displayCnt} elementene er: ',
withName: 'dataene for {name} er {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. ',
},
},
},
};
for (var key in localeObj) {
if (localeObj.hasOwnProperty(key)) {
exports[key] = localeObj[key];
}
}
});
================================================
FILE: app/assets/javascripts/echarts/i18n/langnb-NO.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/**
* AUTO-GENERATED FILE. DO NOT MODIFY.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
/**
* Language: Norwegian Bokmål.
*/
var localeObj = {
time: {
month: [
'januar', 'februar', 'mars', 'april', 'mai', 'juni',
'juli', 'august', 'september', 'oktober', 'november', 'desember',
],
monthAbbr: [
'jan', 'feb', 'mar', 'apr', 'mai', 'jun',
'jul', 'aug', 'sep', 'okt', 'nov', 'des',
],
dayOfWeek: [
'søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag',
],
dayOfWeekAbbr: ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
},
legend: {
selector: {
all: 'Alle',
inverse: 'Omvendt',
},
},
toolbox: {
brush: {
title: {
rect: 'Boksutvalg',
polygon: 'Lassomarkering',
lineX: 'Vannrett utvalg',
lineY: 'Loddrett utvalg',
keep: 'Behold utvalg',
clear: 'Fjern utvalg',
},
},
dataView: {
title: 'Datavisning',
lang: ['Datavisning', 'Lukk', 'Oppfrisk'],
},
dataZoom: {
title: {
zoom: 'Zoom',
back: 'Tilbakestill zoom',
},
},
magicType: {
title: {
line: 'Bytt til linjediagram',
bar: 'Bytt til stolpediagram',
stack: 'Stable',
tiled: 'Side ved side',
},
},
restore: {
title: 'Tilbakestill',
},
saveAsImage: {
title: 'Lagre som bilde',
lang: ['Høyreklikk for å lagre som bilde'],
},
},
series: {
typeNames: {
pie: 'Sektordiagram',
bar: 'Stolpediagram',
line: 'Linjediagram',
scatter: 'Spredningsplott',
effectScatter: 'Krusningsspredningsplott',
radar: 'Radardiagram',
tree: 'Tre',
treemap: 'Trekart',
boxplot: 'Boksplot',
candlestick: 'Candlestick',
k: 'K-linjediagram',
heatmap: 'Varmekart',
map: 'Kart',
parallel: 'Parallelle koordinater',
lines: 'Linjediagram',
graph: 'Relasjonsgraf',
sankey: 'Sankey-diagram',
funnel: 'Traktdiagram',
gauge: 'Måler',
pictorialBar: 'Bildestolper',
themeRiver: 'Tematisk elvediagram',
sunburst: 'Solstrålediagram',
custom: 'Tilpasset',
chart: 'Diagram',
},
},
aria: {
general: {
withTitle: 'Dette er et diagram om "{title}"',
withoutTitle: 'Dette er et diagram',
},
series: {
single: {
prefix: '',
withName: ' med type {seriesType} ved navn {seriesName}.',
withoutName: ' med type {seriesType}.',
},
multiple: {
prefix: '. Det består av {seriesCount} serier.',
withName:
' Serie {seriesId} er av typen {seriesType} som representerer {seriesName}.',
withoutName: ' Serie {seriesId} er av typen {seriesType}.',
separator: {
middle: '',
end: '',
},
},
},
data: {
allData: 'Dataene er som følger: ',
partialData: 'De første {displayCnt} elementene er: ',
withName: 'dataene for {name} er {value}',
withoutName: '{value}',
separator: {
middle: ', ',
end: '. ',
},
},
},
};
echarts.registerLocale('nb-NO', localeObj);
});
================================================
FILE: app/assets/javascripts/echarts/i18n/package.json
================================================
{
"type": "commonjs"
}
================================================
FILE: app/assets/javascripts/echarts/theme/azul.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#f2385a',
'#f5a503',
'#4ad9d9',
'#f7879c',
'#c1d7a8',
'#4dffd2',
'#fccfd7',
'#d5f6f6'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#f2385a'
}
},
visualMap: {
color: ['#f2385a', '#f5a503']
},
toolbox: {
color: ['#f2385a', '#f2385a', '#f2385a', '#f2385a']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#f2385a',
type: 'dashed'
},
crossStyle: {
color: '#f2385a'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#f2385a' // Handle color
},
timeline: {
lineStyle: {
color: '#f2385a'
},
controlStyle: {
color: '#f2385a',
borderColor: '#f2385a'
}
},
candlestick: {
itemStyle: {
color: '#f2385a',
color0: '#f5a503'
},
lineStyle: {
width: 1,
color: '#f2385a',
color0: '#f5a503'
},
areaStyle: {
color: '#c1d7a8',
color0: '#4ad9d9'
}
},
map: {
itemStyle: {
color: '#f2385a'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#f2385a'
},
linkStyle: {
color: '#f2385a'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#f5a503'],
[0.8, '#f2385a'],
[1, '#c1d7a8']
],
width: 8
}
}
}
};
echarts.registerTheme('azul', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/bee-inspired.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#001727',
'#805500',
'#ffff00',
'#ffd11a',
'#f2d71f',
'#f2be19',
'#f3a81a',
'#fff5cc'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#001727'
}
},
visualMap: {
color: ['#001727', '#805500']
},
toolbox: {
color: ['#001727', '#001727', '#001727', '#001727']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#001727',
type: 'dashed'
},
crossStyle: {
color: '#001727'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#001727' // Handle color
},
timeline: {
lineStyle: {
color: '#001727'
},
controlStyle: {
color: '#001727',
borderColor: '#001727'
}
},
candlestick: {
itemStyle: {
color: '#f3a81a',
color0: '#ffff00'
},
lineStyle: {
width: 1,
color: '#ffff00',
color0: '#f3a81a'
},
areaStyle: {
color: '#805500',
color0: '#ffff00'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#f3a81a',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#805500'
}
},
map: {
itemStyle: {
color: '#ffd11a'
},
areaStyle: {
color: '#f2be19'
},
label: {
color: '#ffd11a'
}
},
graph: {
itemStyle: {
color: '#001727'
},
linkStyle: {
color: '#001727'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#f2d71f'],
[0.8, '#001727'],
[1, '#ffff00']
],
width: 8
}
}
}
};
echarts.registerTheme('bee-inspired', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/blue.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#1790cf',
'#1bb2d8',
'#99d2dd',
'#88b0bb',
'#1c7099',
'#038cc4',
'#75abd0',
'#afd6dd'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#1790cf'
}
},
visualMap: {
color: ['#1790cf', '#a2d4e6']
},
toolbox: {
color: ['#1790cf', '#1790cf', '#1790cf', '#1790cf']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#1790cf',
type: 'dashed'
},
crossStyle: {
color: '#1790cf'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#1790cf' // Handle color
},
timeline: {
lineStyle: {
color: '#1790cfa'
},
controlStyle: {
color: '#1790cf',
borderColor: '#1790cf'
}
},
candlestick: {
itemStyle: {
color: '#1bb2d8',
color0: '#99d2dd'
},
lineStyle: {
width: 1,
color: '#1c7099',
color0: '#88b0bb'
},
areaStyle: {
color: '#1790cf',
color0: '#1bb2d8'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#1bb2d8',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#1790cf'
}
},
graph: {
itemStyle: {
color: '#1bb2d8'
},
linkStyle: {
color: '#88b0bb'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '99d2dd'
},
label: {
color: '#c12e34'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#1bb2d8'],
[0.8, '#1790cf'],
[1, '#1c7099']
],
width: 8
}
}
}
};
echarts.registerTheme('blue', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/caravan.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#fad089',
'#ff9c5b',
'#f5634a',
'#ed303c',
'#3b8183',
'#f7826e',
'#faac9e',
'#fcd5cf'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#fad089'
}
},
visualMap: {
color: ['#fad089', '#a2d4e6']
},
toolbox: {
color: ['#fad089', '#fad089', '#fad089', '#fad089']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#fad089',
type: 'dashed'
},
crossStyle: {
color: '#fad089'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#fad089' // Handle color
},
timeline: {
lineStyle: {
color: '#fad089'
},
controlStyle: {
color: '#fad089',
borderColor: '#fad089'
}
},
candlestick: {
itemStyle: {
color: '#ff9c5b',
color0: '#f5634a'
},
lineStyle: {
width: 1,
color: '#3b8183',
color0: '#ed303c'
},
areaStyle: {
color: '#fad089',
color0: '#ed303c'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#fad089',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#ed303c'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#f5634a'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#f5634a'
},
linkStyle: {
color: '#fad089'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#ff9c5b'],
[0.8, '#fad089'],
[1, '#3b8183']
],
width: 8
}
}
}
};
echarts.registerTheme('caravan', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/carp.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#f0d8A8',
'#3d1c00',
'#86b8b1',
'#f2d694',
'#fa2a00',
'#ff8066',
'#ffd5cc',
'#f9edd2'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#f0d8A8'
}
},
visualMap: {
color: ['#f0d8A8', '#3d1c00']
},
toolbox: {
color: ['#f0d8A8', '#f0d8A8', '#f0d8A8', '#f0d8A8']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#f0d8A8',
type: 'dashed'
},
crossStyle: {
color: '#f0d8A8'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#f0d8A8' // Handle color
},
timeline: {
lineStyle: {
color: '#f0dba8'
},
controlStyle: {
color: '#f0dba8',
borderColor: '#f0dba8'
}
},
candlestick: {
itemStyle: {
color: '#3d1c00',
color0: '#86b8b1'
},
lineStyle: {
width: 1,
color: '#fa2a00',
color0: '#f2d694'
},
areaStyle: {
color: '#f0d8A8',
color0: '#86b8b1'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#86b8b1'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#3d1c00'
},
linkStyle: {
color: '#f0d8A8'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#3d1c00'],
[0.8, '#f0d8A8'],
[1, '#fa2a00']
],
width: 8
}
}
}
};
echarts.registerTheme('carp', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/cool.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#b21ab4',
'#6f0099',
'#2a2073',
'#0b5ea8',
'#17aecc',
'#b3b3ff',
'#eb99ff',
'#fae6ff',
'#e6f2ff',
'#eeeeee'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#00aecd'
}
},
visualMap: {
color: ['#00aecd', '#a2d4e6']
},
toolbox: {
color: ['#00aecd', '#00aecd', '#00aecd', '#00aecd']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#00aecd',
type: 'dashed'
},
crossStyle: {
color: '#00aecd'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#00aecd' // Handle color
},
timeline: {
lineStyle: {
color: '#00aecd'
},
controlStyle: {
color: '#00aecd',
borderColor: '00aecd'
}
},
candlestick: {
itemStyle: {
color: '#00aecd',
color0: '#a2d4e6'
},
lineStyle: {
width: 1,
color: '#00aecd',
color0: '#a2d4e6'
},
areaStyle: {
color: '#b21ab4',
color0: '#0b5ea8'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#b21ab4',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#0b5ea8'
}
},
graph: {
itemStyle: {
color: '#b21ab4'
},
linkStyle: {
color: '#2a2073'
}
},
map: {
itemStyle: {
color: '#c12e34'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#dddddd'],
[0.8, '#00aecd'],
[1, '#f5ccff']
],
width: 8
}
}
}
};
echarts.registerTheme('cool', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark-blue.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#eee';
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
axisTick: {
lineStyle: {
color: contrastColor
}
},
axisLabel: {
color: contrastColor
},
splitLine: {
lineStyle: {
type: 'dashed',
color: '#aaa'
}
},
splitArea: {
areaStyle: {
color: contrastColor
}
}
};
};
var colorPalette = [
'#00305a',
'#004b8d',
'#0074d9',
'#4192d9',
'#7abaf2',
'#99cce6',
'#d6ebf5',
'#eeeeee'
];
var theme = {
color: colorPalette,
backgroundColor: '#333',
tooltip: {
axisPointer: {
lineStyle: {
color: contrastColor
},
crossStyle: {
color: contrastColor
}
}
},
legend: {
textStyle: {
color: contrastColor
}
},
title: {
textStyle: {
color: contrastColor
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#00305a' // Handle color
},
timeline: {
itemStyle: {
color: colorPalette[1]
},
lineStyle: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
},
label: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#004b8d'],
[0.8, '#00305a'],
[1, '#7abaf2']
],
width: 8
}
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark-blue', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark-bold.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#eee';
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
axisTick: {
lineStyle: {
color: contrastColor
}
},
axisLabel: {
color: contrastColor
},
splitLine: {
lineStyle: {
type: 'dashed',
color: '#aaa'
}
},
splitArea: {
areaStyle: {
color: contrastColor
}
}
};
};
var colorPalette = [
'#458c6b',
'#f2da87',
'#d9a86c',
'#d94436',
'#a62424',
'#76bc9b',
'#cce6da',
'#eeeeee'
];
var theme = {
color: colorPalette,
backgroundColor: '#333',
tooltip: {
axisPointer: {
lineStyle: {
color: contrastColor
},
crossStyle: {
color: contrastColor
}
}
},
legend: {
textStyle: {
color: contrastColor
}
},
title: {
textStyle: {
color: contrastColor
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#458c6b' // Handle color
},
timeline: {
itemStyle: {
color: colorPalette[1]
},
lineStyle: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
},
label: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#f2da87'],
[0.8, '#458c6b'],
[1, '#a62424']
],
width: 8
}
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark-bold', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark-digerati.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#eee';
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
axisTick: {
lineStyle: {
color: contrastColor
}
},
axisLabel: {
color: contrastColor
},
splitLine: {
lineStyle: {
type: 'dashed',
color: '#aaa'
}
},
splitArea: {
areaStyle: {
color: contrastColor
}
}
};
};
var colorPalette = [
'#52656b',
'#ff3b77',
'#a3cc00',
'#ffffff',
'#b8b89f',
'#ffccdb',
'#e5ff80',
'#f4f4f0'
];
var theme = {
color: colorPalette,
backgroundColor: '#333',
tooltip: {
axisPointer: {
lineStyle: {
color: contrastColor
},
crossStyle: {
color: contrastColor
}
}
},
legend: {
textStyle: {
color: contrastColor
}
},
title: {
textStyle: {
color: contrastColor
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#52656b' // Handle color
},
timeline: {
itemStyle: {
color: colorPalette[1]
},
lineStyle: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
},
label: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#ff3b77'],
[0.8, '#52656b'],
[1, '#b8b89f']
],
width: 8
}
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark-digerati', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark-fresh-cut.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#eee';
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
axisTick: {
lineStyle: {
color: contrastColor
}
},
axisLabel: {
color: contrastColor
},
splitLine: {
lineStyle: {
type: 'dashed',
color: '#aaa'
}
},
splitArea: {
areaStyle: {
color: contrastColor
}
}
};
};
var colorPalette = [
'#00a8c6',
'#40c0cb',
'#ebd3ad',
'#aee239',
'#8fbe00',
'#33e0ff',
'#b3f4ff',
'#e6ff99'
];
var theme = {
color: colorPalette,
backgroundColor: '#333',
tooltip: {
axisPointer: {
lineStyle: {
color: contrastColor
},
crossStyle: {
color: contrastColor
}
}
},
legend: {
textStyle: {
color: contrastColor
}
},
title: {
textStyle: {
color: contrastColor
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#00a8c6' // Handle color
},
timeline: {
itemStyle: {
color: colorPalette[1]
},
lineStyle: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
},
label: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#40c0cb'],
[0.8, '#00a8c6'],
[1, '#8fbe00']
],
width: 8
}
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark-fresh-cut', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark-mushroom.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#eee';
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
axisTick: {
lineStyle: {
color: contrastColor
}
},
axisLabel: {
color: contrastColor
},
splitLine: {
lineStyle: {
type: 'dashed',
color: '#aaa'
}
},
splitArea: {
areaStyle: {
color: contrastColor
}
}
};
};
var colorPalette = [
'#cc0e00',
'#ff1a0a',
'#ff8880',
'#ffc180',
'#ffc2b0',
'#ffffff',
'#ff8880',
'#ffe6e6'
];
var theme = {
color: colorPalette,
backgroundColor: '#333',
tooltip: {
axisPointer: {
lineStyle: {
color: contrastColor
},
crossStyle: {
color: contrastColor
}
}
},
legend: {
textStyle: {
color: contrastColor
}
},
title: {
textStyle: {
color: contrastColor
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#cc0e00' // Handle color
},
timeline: {
itemStyle: {
color: colorPalette[1]
},
lineStyle: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
},
label: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#ff1a0a'],
[0.8, '#cc0e00'],
[1, '#ffc2b0']
],
width: 8
}
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark-mushroom', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/dark.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var contrastColor = '#B9B8CE';
var backgroundColor = '#100C2A';
var axisCommon = function () {
return {
axisLine: {
lineStyle: {
color: contrastColor
}
},
splitLine: {
lineStyle: {
color: '#484753'
}
},
splitArea: {
areaStyle: {
color: ['rgba(255,255,255,0.02)', 'rgba(255,255,255,0.05)']
}
},
minorSplitLine: {
lineStyle: {
color: '#20203B'
}
}
};
};
var colorPalette = [
'#4992ff',
'#7cffb2',
'#fddd60',
'#ff6e76',
'#58d9f9',
'#05c091',
'#ff8a45',
'#8d48e3',
'#dd79ff'
];
var theme = {
darkMode: true,
color: colorPalette,
backgroundColor: backgroundColor,
axisPointer: {
lineStyle: {
color: '#817f91'
},
crossStyle: {
color: '#817f91'
},
label: {
// TODO Contrast of label backgorundColor
color: '#fff'
}
},
legend: {
textStyle: {
color: contrastColor
}
},
textStyle: {
color: contrastColor
},
title: {
textStyle: {
color: '#EEF1FA'
},
subtextStyle: {
color: '#B9B8CE'
}
},
toolbox: {
iconStyle: {
borderColor: contrastColor
}
},
dataZoom: {
borderColor: '#71708A',
textStyle: {
color: contrastColor
},
brushStyle: {
color: 'rgba(135,163,206,0.3)'
},
handleStyle: {
color: '#353450',
borderColor: '#C5CBE3'
},
moveHandleStyle: {
color: '#B0B6C3',
opacity: 0.3
},
fillerColor: 'rgba(135,163,206,0.2)',
emphasis: {
handleStyle: {
borderColor: '#91B7F2',
color: '#4D587D'
},
moveHandleStyle: {
color: '#636D9A',
opacity: 0.7
}
},
dataBackground: {
lineStyle: {
color: '#71708A',
width: 1
},
areaStyle: {
color: '#71708A'
}
},
selectedDataBackground: {
lineStyle: {
color: '#87A3CE'
},
areaStyle: {
color: '#87A3CE'
}
}
},
visualMap: {
textStyle: {
color: contrastColor
}
},
timeline: {
lineStyle: {
color: contrastColor
},
label: {
color: contrastColor
},
controlStyle: {
color: contrastColor,
borderColor: contrastColor
}
},
calendar: {
itemStyle: {
color: backgroundColor
},
dayLabel: {
color: contrastColor
},
monthLabel: {
color: contrastColor
},
yearLabel: {
color: contrastColor
}
},
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: axisCommon(),
line: {
symbol: 'circle'
},
graph: {
color: colorPalette
},
gauge: {
title: {
color: contrastColor
}
},
candlestick: {
itemStyle: {
color: '#FD1050',
color0: '#0CF49B',
borderColor: '#FD1050',
borderColor0: '#0CF49B'
}
}
};
theme.categoryAxis.splitLine.show = false;
echarts.registerTheme('dark', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/eduardo.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#59535e',
'#e7dcef',
'#f1baf3',
'#5d4970',
'#372049',
'#c0b2cd',
'#ffccff',
'#f2f0f5'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#59535e'
}
},
visualMap: {
color: ['#59535e', '#e7dcef']
},
toolbox: {
color: ['#59535e', '#59535e', '#59535e', '#59535e']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#59535e',
type: 'dashed'
},
crossStyle: {
color: '#59535e'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#59535e' // Handle color
},
timeline: {
lineStyle: {
color: '#59535e'
},
controlStyle: {
color: '#59535e',
borderColor: '#59535e'
}
},
candlestick: {
itemStyle: {
color: '#e7dcef',
color0: '#f1baf3'
},
lineStyle: {
width: 1,
color: '#372049',
color0: '#5d4970'
},
areaStyle: {
color: '#59535e',
color0: '#e7dcef'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#59535e',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#e7dcef'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#f1baf3'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#59535e'
},
linkStyle: {
color: '#59535e'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#e7dcef'],
[0.8, '#59535e'],
[1, '#372049']
],
width: 8
}
}
}
};
echarts.registerTheme('eduardo', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/forest.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#313b23',
'#494f2b',
'#606233',
'#d6b77b',
'#0e0e0e',
'#076278',
'#808080',
'#e7d5b1'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#313b23'
}
},
visualMap: {
color: ['#313b23', '#494f2b']
},
toolbox: {
color: ['#313b23', '#313b23', '#313b23', '#313b23']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#313b23',
type: 'dashed'
},
crossStyle: {
color: '#313b23'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#313b23' // Handle color
},
timeline: {
lineStyle: {
color: '#313b23'
},
controlStyle: {
color: '#313b23',
borderColor: '#313b23'
}
},
candlestick: {
itemStyle: {
color: '#494f2b',
color0: '#606233'
},
lineStyle: {
width: 1,
color: '#0e0e0e',
color0: '#d6b77b'
},
areaStyle: {
color: '#494f2b',
color0: '#d6b77b'
}
},
map: {
itemStyle: {
color: '#606233'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#494f2b'
},
linkStyle: {
color: '#313b23'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#494f2b'],
[0.8, '#313b23'],
[1, '0e0e0e']
],
width: 8
}
}
}
};
echarts.registerTheme('forest', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/fresh-cut.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#00a8c6',
'#40c0cb',
'#f0dec2',
'#aee239',
'#8fbe00',
'#33e0ff',
'#b3f4ff',
'#e6ff99'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#00a8c6'
}
},
visualMap: {
color: ['#00a8c6', '#a2d4e6']
},
toolbox: {
color: ['#00a8c6', '#00a8c6', '#00a8c6', '#00a8c6']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#00a8c6',
type: 'dashed'
},
crossStyle: {
color: '#00a8c6'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#00a8c6' // Handle color
},
timeline: {
lineStyle: {
color: '#00a8c6'
},
controlStyle: {
color: '#00a8c6',
borderColor: '#00a8c6'
}
},
candlestick: {
itemStyle: {
color: '#40c0cb',
color0: '#f0dec2'
},
lineStyle: {
width: 1,
color: '#8fbe00',
color0: '#aee239'
},
areaStyle: {
color: '#00a8c6',
color0: '#aee239'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#f0dec2'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#f0dec2'
},
linkStyle: {
color: '#00a8c6'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#40c0cb'],
[0.8, '#00a8c6'],
[1, '#8fbe00']
],
width: 8
}
}
}
};
echarts.registerTheme('fresh-cut', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/fruit.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#ffcb6a',
'#ffa850',
'#ffe2c4',
'#e5834e',
'#ffb081',
'#f7826e',
'#faac9e',
'#fcd5cf'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#ffcb6a'
}
},
visualMap: {
color: ['#ffcb6a', '#ffa850']
},
toolbox: {
color: ['#ffcb6a', '#ffcb6a', '#ffcb6a', '#ffcb6a']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#ffcb6a',
type: 'dashed'
},
crossStyle: {
color: '#ffcb6a'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#ffcb6a' // Handle color
},
timeline: {
lineStyle: {
color: '#ffcb6a'
},
controlStyle: {
color: '#ffcb6a',
borderColor: '#ffcb6a'
}
},
candlestick: {
itemStyle: {
color: '#ffa850',
color0: '#ffe2c4'
},
lineStyle: {
width: 1,
color: '#ffb081',
color0: '#e5834e'
},
areaStyle: {
color: '#e5834e',
color0: '#fcd5cf'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#fcd5cf',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#e5834e'
}
},
map: {
itemStyle: {
color: '#ffe2c4'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#f2385a'
},
linkStyle: {
color: '#ffcb6a'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#ffa850'],
[0.8, '#ffcb6a'],
[1, '#ffb081']
],
width: 8
}
}
}
};
echarts.registerTheme('fruit', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/gray.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#757575',
'#c7c7c7',
'#dadada',
'#8b8b8b',
'#b5b5b5',
'#e9e9e9'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#757575'
}
},
dataRange: {
color: ['#636363', '#dcdcdc']
},
toolbox: {
color: ['#757575', '#757575', '#757575', '#757575']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#757575',
type: 'dashed'
},
crossStyle: {
color: '#757575'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(117,117,117,0.2)', // Fill the color
handleColor: '#757575' // Handle color
},
grid: {
borderWidth: 0
},
categoryAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#757575'
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
valueAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#757575'
}
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.1)', 'rgba(200,200,200,0.1)']
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
timeline: {
lineStyle: {
color: '#757575'
},
controlStyle: {
color: '#757575',
borderColor: '#757575'
}
},
candlestick: {
itemStyle: {
color: '#8b8b8b',
color0: '#dadada'
},
lineStyle: {
width: 1,
color: '#757575',
color0: '#c7c7c7'
},
areaStyle: {
color: '#757575',
color0: '#e9e9e9'
}
},
map: {
itemStyle: {
color: '#c7c7c7'
},
areaStyle: {
color: 'ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#e9e9e9'
},
linkStyle: {
color: '#757575'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#e9e9e9',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#757575'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#b5b5b5'],
[0.8, '#757575'],
[1, '#5c5c5c']
],
width: 8
}
}
}
};
echarts.registerTheme('gray', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/green.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#408829',
'#68a54a',
'#a9cba2',
'#86b379',
'#397b29',
'#8abb6f',
'#759c6a',
'#bfd3b7'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#408829'
}
},
visualMap: {
color: ['408829', '#a9cba2']
},
toolbox: {
color: ['#408829', '#408829', '#408829', '#408829']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#408829',
type: 'dashed'
},
crossStyle: {
color: '#408829'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(64,136,41,0.2)', // Fill the color
handleColor: '#408829' // Handle color
},
grid: {
borderWidth: 0
},
categoryAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#408829'
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
valueAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#408829'
}
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.1)', 'rgba(200,200,200,0.1)']
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
timeline: {
lineStyle: {
color: '#408829'
},
controlStyle: {
color: '#408829',
borderColor: '#408829'
}
},
candlestick: {
itemStyle: {
color: '#68a54a',
color0: '#a9cba2'
},
lineStyle: {
width: 1,
color: '#408829',
color0: '#86b379'
},
areaStyle: {
color: '#408829',
color0: '#bfd3b7'
}
},
graph: {
itemStyle: {
color: '#bfd3b7'
},
linkStyle: {
color: '#408829'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#bfd3b7',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#408829'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#408829'
},
label: {
color: '#000'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#86b379'],
[0.8, '#68a54a'],
[1, '#408829']
],
width: 8
}
}
}
};
echarts.registerTheme('green', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/helianthus.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#44B7D3',
'#E42B6D',
'#F4E24E',
'#FE9616',
'#8AED35',
'#ff69b4',
'#ba55d3',
'#cd5c5c',
'#ffa500',
'#40e0d0',
'#E95569',
'#ff6347',
'#7b68ee',
'#00fa9a',
'#ffd700',
'#6699FF',
'#ff6666',
'#3cb371',
'#b8860b',
'#30e0e0'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#8A826D'
}
},
dataRange: {
x: 'right',
y: 'center',
itemWidth: 5,
itemHeight: 25,
color: ['#E42B6D', '#F9AD96'],
text: ['High', 'Low'], // Text, default is numeric text
textStyle: {
color: '#8A826D' // Range text color
}
},
toolbox: {
color: ['#E95569', '#E95569', '#E95569', '#E95569'],
effectiveColor: '#ff4500',
itemGap: 8
},
tooltip: {
backgroundColor: 'rgba(138,130,109,0.7)', // Prompt background color, default is black with a transparency of 0.7
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#6B6455',
type: 'dashed'
},
crossStyle: {
color: '#A6A299'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: 'rgba(130,197,209,0.6)', // Data background color
fillerColor: 'rgba(233,84,105,0.1)', // Fill the color
handleColor: 'rgba(107,99,84,0.8)' // Handle color
},
grid: {
borderWidth: 0
},
categoryAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#6B6455'
}
},
splitLine: {
// separate line
show: false
}
},
valueAxis: {
axisLine: {
// Coordinate axis
show: true
},
splitArea: {
show: false
},
splitLine: {
// separate line
lineStyle: {
// Property 'lineStyle' controls line styles
color: ['#FFF'],
type: 'dashed'
}
}
},
polar: {
axisLine: {
// Coordinate axis
lineStyle: {
// // Property 'lineStyle' controls line styles
color: '#ddd'
}
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.2)', 'rgba(200,200,200,0.2)']
}
},
splitLine: {
lineStyle: {
color: '#ddd'
}
}
},
timeline: {
lineStyle: {
color: '#6B6455'
},
controlStyle: {
color: '#6B6455',
borderColor: '#6B6455'
}
},
line: {
smooth: true,
symbol: 'emptyCircle', // Inflection point graphic type
symbolSize: 3 // Inflection point graphic size
},
candlestick: {
itemStyle: {
color: '#e42B6d',
color0: '#44B7d3'
},
lineStyle: {
width: 1,
color: '#e42B6d',
color0: '#44B7d3'
},
areaStyle: {
color: '#fe994e',
color0: '#e42B6d'
}
},
map: {
itemStyle: {
color: '#6b6455'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#e42B6d'
}
},
graph: {
itemStyle: {
color: '#e42B6d'
},
linkStyle: {
color: '#6b6455'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#e42B6d',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#6b6455'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#44B7D3'],
[0.8, '#6B6455'],
[1, '#E42B6D']
],
width: 8
}
}
}
};
echarts.registerTheme('helianthus', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/infographic.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#C1232B',
'#27727B',
'#FCCE10',
'#E87C25',
'#B5C334',
'#FE8463',
'#9BCA63',
'#FAD860',
'#F3A43B',
'#60C0DD',
'#D7504B',
'#C6E579',
'#F4E001',
'#F0805A',
'#26C0C0'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#27727B'
}
},
visualMap: {
color: ['#C1232B', '#FCCE10']
},
toolbox: {
iconStyle: {
borderColor: colorPalette[0]
}
},
tooltip: {
backgroundColor: 'rgba(50,50,50,0.5)',
axisPointer: {
type: 'line',
lineStyle: {
color: '#27727B',
type: 'dashed'
},
crossStyle: {
color: '#27727B'
},
shadowStyle: {
color: 'rgba(200,200,200,0.3)'
}
}
},
dataZoom: {
dataBackgroundColor: 'rgba(181,195,52,0.3)',
fillerColor: 'rgba(181,195,52,0.2)',
handleColor: '#27727B'
},
categoryAxis: {
axisLine: {
lineStyle: {
color: '#27727B'
}
},
splitLine: {
show: false
}
},
valueAxis: {
axisLine: {
show: false
},
splitArea: {
show: false
},
splitLine: {
lineStyle: {
color: ['#ccc'],
type: 'dashed'
}
}
},
timeline: {
itemStyle: {
color: '#27727B'
},
lineStyle: {
color: '#27727B'
},
controlStyle: {
color: '#27727B',
borderColor: '#27727B'
},
symbol: 'emptyCircle',
symbolSize: 3
},
line: {
itemStyle: {
borderWidth: 2,
borderColor: '#fff',
lineStyle: {
width: 3
}
},
emphasis: {
itemStyle: {
borderWidth: 0
}
},
symbol: 'circle',
symbolSize: 3.5
},
candlestick: {
itemStyle: {
color: '#c1232b',
color0: '#b5c334'
},
lineStyle: {
width: 1,
color: '#c1232b',
color0: '#b5c334'
},
areaStyle: {
color: '#c1232b',
color0: '#27727b'
}
},
graph: {
itemStyle: {
color: '#c1232b'
},
linkStyle: {
color: '#b5c334'
}
},
map: {
itemStyle: {
color: '#f2385a',
areaColor: '#ddd',
borderColor: '#eee'
},
areaStyle: {
color: '#fe994e'
},
label: {
color: '#c1232b'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#B5C334'],
[0.8, '#27727B'],
[1, '#C1232B']
]
}
},
axisTick: {
splitNumber: 2,
length: 5,
lineStyle: {
color: '#fff'
}
},
axisLabel: {
color: '#fff'
},
splitLine: {
length: '5%',
lineStyle: {
color: '#fff'
}
},
title: {
offsetCenter: [0, -20]
}
}
};
echarts.registerTheme('infographic', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/inspired.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#cc0000',
'#002266',
'#ff9900',
'#006600',
'#8a150f',
'#076278',
'#808080',
'#f07b75'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#cc0000'
}
},
visualMap: {
color: ['#cc0000', '#002266']
},
toolbox: {
color: ['#cc0000', '#cc0000', '#cc0000', '#cc0000']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#cc0000',
type: 'dashed'
},
crossStyle: {
color: '#cc0000'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#cc0000' // Handle color
},
timeline: {
lineStyle: {
color: '#cc0000'
},
controlStyle: {
color: '#cc0000',
borderColor: '#cc0000'
}
},
candlestick: {
itemStyle: {
color: '#002266',
color0: '#ff9900'
},
lineStyle: {
width: 1,
color: '#8a150f',
color0: '#006600'
},
areaStyle: {
color: '#cc0000',
color0: '#ff9900'
}
},
map: {
itemStyle: {
color: '#ff9900'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#ff9900'
},
linkStyle: {
color: '#cc0000'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#002266'],
[0.8, '#cc0000'],
[1, '8a150f']
],
width: 8
}
}
}
};
echarts.registerTheme('inspired', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/jazz.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#e9e0d1',
'#91a398',
'#33605a',
'#070001',
'#68462b',
'#58a79c',
'#abd3ce',
'#eef6f5'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#e9e0d1'
}
},
visualMap: {
color: ['#e9e0d1', '#91a398']
},
toolbox: {
color: ['#e9e0d1', '#e9e0d1', '#e9e0d1', '#e9e0d1']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#e9e0d1',
type: 'dashed'
},
crossStyle: {
color: '#e9e0d1'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#e9e0d1' // Handle color
},
timeline: {
lineStyle: {
color: '#e9e0d1'
},
controlStyle: {
color: '#e9e0d1',
borderColor: '#e9e0d1'
}
},
candlestick: {
itemStyle: {
color: '#91a398',
color0: '#33605a'
},
lineStyle: {
width: 1,
color: '#68462b',
color0: '#070001'
},
areaStyle: {
color: '#91a398',
color0: '#abd3ce'
}
},
map: {
itemStyle: {
color: '#c12e34'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#33605a'
},
linkStyle: {
color: '#e9e0d1'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#91a398'],
[0.8, '#e9e0d1'],
[1, '#68462b']
],
width: 8
}
}
}
};
echarts.registerTheme('jazz', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/london.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#02151a',
'#043a47',
'#087891',
'#c8c8c8',
'#b31d14',
'#0b9cc1',
'#f2f2f2',
'#f07b75'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#02151a'
}
},
visualMap: {
color: ['#02151a', '#a2d4e6']
},
toolbox: {
color: ['#02151a', '#02151a', '#02151a', '#02151a']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#02151a',
type: 'dashed'
},
crossStyle: {
color: '#02151a'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#02151a' // Handle color
},
timeline: {
lineStyle: {
color: '#02151a'
},
controlStyle: {
color: '#02151a',
borderColor: '#02151a'
}
},
candlestick: {
itemStyle: {
color: '#043a47',
color0: '#087891'
},
lineStyle: {
width: 1,
color: '#b31d14',
color0: '#c8c8c8'
},
areaStyle: {
color: '#087891',
color0: '#c8c8c8'
}
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#087891'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#c12e34'
},
linkStyle: {
color: '#02151a'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#043a47'],
[0.8, '#02151a'],
[1, '#b31d14']
],
width: 8
}
}
}
};
echarts.registerTheme('london', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/macarons.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#2ec7c9',
'#b6a2de',
'#5ab1ef',
'#ffb980',
'#d87a80',
'#8d98b3',
'#e5cf0d',
'#97b552',
'#95706d',
'#dc69aa',
'#07a2a4',
'#9a7fd1',
'#588dd5',
'#f5994e',
'#c05050',
'#59678c',
'#c9ab00',
'#7eb00a',
'#6f5553',
'#c14089'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#008acd'
}
},
visualMap: {
itemWidth: 15,
color: ['#5ab1ef', '#e0ffff']
},
toolbox: {
iconStyle: {
borderColor: colorPalette[0]
}
},
tooltip: {
borderWidth: 0,
backgroundColor: 'rgba(50,50,50,0.5)',
textStyle: {
color: '#FFF'
},
axisPointer: {
type: 'line',
lineStyle: {
color: '#008acd'
},
crossStyle: {
color: '#008acd'
},
shadowStyle: {
color: 'rgba(200,200,200,0.2)'
}
}
},
dataZoom: {
dataBackgroundColor: '#efefff',
fillerColor: 'rgba(182,162,222,0.2)',
handleColor: '#008acd'
},
grid: {
borderColor: '#eee'
},
categoryAxis: {
axisLine: {
lineStyle: {
color: '#008acd'
}
},
splitLine: {
lineStyle: {
color: ['#eee']
}
}
},
valueAxis: {
axisLine: {
lineStyle: {
color: '#008acd'
}
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.1)', 'rgba(200,200,200,0.1)']
}
},
splitLine: {
lineStyle: {
color: ['#eee']
}
}
},
timeline: {
lineStyle: {
color: '#008acd'
},
controlStyle: {
color: '#008acd',
borderColor: '#008acd'
},
symbol: 'emptyCircle',
symbolSize: 3
},
line: {
smooth: true,
symbol: 'emptyCircle',
symbolSize: 3
},
candlestick: {
itemStyle: {
color: '#d87a80',
color0: '#2ec7c9'
},
lineStyle: {
width: 1,
color: '#d87a80',
color0: '#2ec7c9'
},
areaStyle: {
color: '#2ec7c9',
color0: '#b6a2de'
}
},
scatter: {
symbol: 'circle',
symbolSize: 4
},
map: {
itemStyle: {
color: '#ddd'
},
areaStyle: {
color: '#fe994e'
},
label: {
color: '#d87a80'
}
},
graph: {
itemStyle: {
color: '#d87a80'
},
linkStyle: {
color: '#2ec7c9'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#2ec7c9'],
[0.8, '#5ab1ef'],
[1, '#d87a80']
],
width: 10
}
},
axisTick: {
splitNumber: 10,
length: 15,
lineStyle: {
color: 'auto'
}
},
splitLine: {
length: 22,
lineStyle: {
color: 'auto'
}
},
pointer: {
width: 5
}
}
};
echarts.registerTheme('macarons', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/macarons2.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#ed9678',
'#e7dac9',
'#cb8e85',
'#f3f39d',
'#c8e49c',
'#f16d7a',
'#f3d999',
'#d3758f',
'#dcc392',
'#2e4783',
'#82b6e9',
'#ff6347',
'#a092f1',
'#0a915d',
'#eaf889',
'#6699FF',
'#ff6666',
'#3cb371',
'#d5b158',
'#38b6b6'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#cb8e85'
}
},
dataRange: {
color: ['#cb8e85', '#e7dac9'], //颜色
//text:['高','低'], // 文本,默认为数值文本
textStyle: {
color: '#333' // 值域文字颜色
}
},
bar: {
barMinHeight: 0, // 最小高度改为0
// barWidth: null, // 默认自适应
barGap: '30%', // 柱间距离,默认为柱形宽度的30%,可设固定值
barCategoryGap: '20%', // 类目间柱形距离,默认为类目间距的20%,可设固定值
label: {
show: false
// position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
// 'inside'|'left'|'right'|'top'|'bottom'
// textStyle: null // 默认使用全局文本样式,详见TEXTSTYLE
},
itemStyle: {
// color: '各异',
barBorderColor: '#fff', // 柱条边线
barBorderRadius: 0, // 柱条边线圆角,单位px,默认为0
barBorderWidth: 1 // 柱条边线线宽,单位px,默认为1
},
emphasis: {
itemStyle: {
// color: '各异',
barBorderColor: 'rgba(0,0,0,0)', // 柱条边线
barBorderRadius: 0, // 柱条边线圆角,单位px,默认为0
barBorderWidth: 1, // 柱条边线线宽,单位px,默认为1
},
label: {
show: false
// position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
// 'inside'|'left'|'right'|'top'|'bottom'
// textStyle: null // 默认使用全局文本样式,详见TEXTSTYLE
}
}
},
line: {
label: {
show: false
// position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
// 'inside'|'left'|'right'|'top'|'bottom'
// textStyle: null // 默认使用全局文本样式,详见TEXTSTYLE
},
itemStyle: {
// color: 各异,
},
emphasis: {
// color: 各异,
label: {
show: false
// position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
// 'inside'|'left'|'right'|'top'|'bottom'
// textStyle: null // 默认使用全局文本样式,详见TEXTSTYLE
}
},
lineStyle: {
width: 2,
type: 'solid',
shadowColor: 'rgba(0,0,0,0)', //默认透明
shadowBlur: 5,
shadowOffsetX: 3,
shadowOffsetY: 3
},
//smooth : false,
//symbol: null, // 拐点图形类型
symbolSize: 2, // 拐点图形大小
//symbolRotate : null, // 拐点图形旋转控制
showAllSymbol: false // 标志图形默认只有主轴显示(随主轴标签间隔隐藏策略)
},
candlestick: {
itemStyle: {
color: '#fe9778',
color0: '#e7dac9'
},
lineStyle: {
width: 1,
color: '#f78766',
color0: '#f1ccb8'
},
areaStyle: {
color: '#e7dac9',
color0: '#c8e49c'
}
},
// 饼图默认参数
pie: {
center: ['50%', '50%'], // 默认全局居中
radius: [0, '75%'],
clockWise: false, // 默认逆时针
startAngle: 90,
minAngle: 0, // 最小角度改为0
selectedOffset: 10, // 选中是扇区偏移量
label: {
show: true,
position: 'outer',
color: '#1b1b1b',
lineStyle: { color: '#1b1b1b' }
// textStyle: null // 默认使用全局文本样式,详见TEXTSTYLE
},
itemStyle: {
// color: 各异,
borderColor: '#fff',
borderWidth: 1
},
labelLine: {
show: true,
length: 20,
lineStyle: {
// color: 各异,
width: 1,
type: 'solid'
}
}
},
map: {
itemStyle: {
color: '#ddd',
borderColor: '#fff',
borderWidth: 1
},
areaStyle: {
color: '#f3f39d'
},
label: {
show: false,
color: 'rgba(139,69,19,1)'
},
showLegendSymbol: true
},
graph: {
itemStyle: {
color: '#d87a80'
},
linkStyle: {
strokeColor: '#a17e6e'
},
nodeStyle: {
brushType: 'both',
strokeColor: '#a17e6e'
},
label: {
show: false
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#ed9678'],
[0.8, '#e7dac9'],
[1, '#cb8e85']
],
width: 8
}
}
}
};
echarts.registerTheme('macarons2', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/mint.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#8aedd5',
'#93bc9e',
'#cef1db',
'#7fe579',
'#a6d7c2',
'#bef0bb',
'#99e2vb',
'#94f8a8',
'#7de5b8',
'#4dfb70'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#8aedd5'
}
},
toolbox: {
color: ['#8aedd5', '#8aedd5', '#8aedd5', '#8aedd5']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#8aedd5',
type: 'dashed'
},
crossStyle: {
color: '#8aedd5'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(64,136,41,0.2)', // Fill the color
handleColor: '#408829' // Handle color
},
dataRange: {
color: ['#93bc92', '#bef0bb']
},
candlestick: {
itemStyle: {
color: '#8aedd5',
color0: '#7fe579'
},
lineStyle: {
width: 1,
color: '#8aedd5',
color0: '#7fe579'
},
areaStyle: {
color: '#8aedd5',
color0: '#93bc9e'
}
},
graph: {
itemStyle: {
color: '#8aedd5'
},
linkStyle: {
color: '#93bc9e'
}
},
map: {
itemStyle: {
color: '#8aedd5'
},
areaStyle: {
color: '#93bc9e'
},
label: {
color: '#cef1db'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#93bc9e'],
[0.8, '#8aedd5'],
[1, '#a6d7c2']
],
width: 8
}
}
}
};
echarts.registerTheme('mint', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/package.json
================================================
{
"type": "commonjs"
}
================================================
FILE: app/assets/javascripts/echarts/theme/rainbow.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorAll = [
'#37A2DA', '#32C5E9', '#67E0E3', '#9FE6B8', '#FFDB5C', '#ff9f7f',
'#fb7293', '#E062AE', '#E690D1', '#e7bcf3', '#9d96f5', '#8378EA', '#96BFFF'
];
var theme = {
color: colorAll,
colorLayer: [
['#37A2DA', '#ffd85c', '#fd7b5f'],
['#37A2DA', '#67E0E3', '#FFDB5C', '#ff9f7f', '#E062AE', '#9d96f5'],
['#37A2DA', '#32C5E9', '#9FE6B8', '#FFDB5C', '#ff9f7f', '#fb7293', '#e7bcf3', '#8378EA', '#96BFFF'],
colorAll
]
};
echarts.registerTheme('rainbow', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/red-velvet.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#8b1a2d',
'#a7314b',
'#e6004c',
'#ff8066',
'#8e5c4e',
'#ff1a66',
'#d6c582',
'#f0d4af'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#8b1a2d'
}
},
visualMap: {
color: ['#8b1a2d', '#a7314b']
},
toolbox: {
color: ['#8b1a2d', '#8b1a2d', '#8b1a2d', '#8b1a2d']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#8b1a2d',
type: 'dashed'
},
crossStyle: {
color: '#8b1a2d'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#8b1a2d' // Handle color
},
timeline: {
lineStyle: {
color: '#8b1a2d'
},
controlStyle: {
color: '#8b1a2d',
borderColor: '#8b1a2d'
}
},
candlestick: {
itemStyle: {
color: '#a7314b',
color0: '#d6c582'
},
lineStyle: {
width: 1,
color: '#8e5c4e',
color0: '#f0d4af'
},
areaStyle: {
color: '#8b1a2d',
color0: '#ff8066'
}
},
map: {
itemStyle: {
color: '#8b1a2d'
},
areaStyle: {
color: '#ff8066'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#ff8066'
},
linkStyle: {
color: '#8b1a2d'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#a7314b'],
[0.8, '#8b1a2d'],
[1, '#8e5c4e']
],
width: 8
}
}
}
};
echarts.registerTheme('red-velvet', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/red.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#d8361b',
'#f16b4c',
'#f7b4a9',
'#d26666',
'#99311c',
'#c42703',
'#d07e75'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#d8361b'
}
},
visualMap: {
color: ['#d8361b', '#ffd2d2']
},
dataRange: {
color: ['#bd0707', '#ffd2d2']
},
toolbox: {
color: ['#d8361b', '#d8361b', '#d8361b', '#d8361b']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#d8361b',
type: 'dashed'
},
crossStyle: {
color: '#d8361b'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(216,54,27,0.2)', // Fill the color
handleColor: '#d8361b' // Handle color
},
grid: {
borderWidth: 0
},
categoryAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#d8361b'
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
valueAxis: {
axisLine: {
// Coordinate axis
lineStyle: {
// Property 'lineStyle' controls line styles
color: '#d8361b'
}
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.1)', 'rgba(200,200,200,0.1)']
}
},
splitLine: {
// Separation line
lineStyle: {
// Property 'lineStyle' (see lineStyle) controls line styles
color: ['#eee']
}
}
},
timeline: {
lineStyle: {
color: '#d8361b'
},
controlStyle: {
color: '#d8361b',
borderColor: '#d8361b'
}
},
candlestick: {
itemStyle: {
color: '#f16b4c',
color0: '#f7b4a9'
},
lineStyle: {
width: 1,
color: '#d8361b',
color0: '#d26666'
},
areaStyle: {
color: '#d8361b',
color0: '#d07e75'
}
},
graph: {
itemStyle: {
color: '#d07e75'
},
linkStyle: {
color: '#d8361b'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#d07e75',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#d8361b'
}
},
map: {
itemStyle: {
color: '#d8361b'
},
areaStyle: {
color: '#d07e75'
},
label: {
color: '#c12e34'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#f16b4c'],
[0.8, '#d8361b'],
[1, '#99311c']
],
width: 8
}
}
}
};
echarts.registerTheme('red', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/roma.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#E01F54',
'#001852',
'#f5e8c8',
'#b8d2c7',
'#c6b38e',
'#a4d8c2',
'#f3d999',
'#d3758f',
'#dcc392',
'#2e4783',
'#82b6e9',
'#ff6347',
'#a092f1',
'#0a915d',
'#eaf889',
'#6699FF',
'#ff6666',
'#3cb371',
'#d5b158',
'#38b6b6'
];
var theme = {
color: colorPalette,
visualMap: {
color: ['#e01f54', '#e7dbc3'],
textStyle: {
color: '#333'
}
},
candlestick: {
itemStyle: {
color: '#e01f54',
color0: '#001852'
},
lineStyle: {
width: 1,
color: '#f5e8c8',
color0: '#b8d2c7'
},
areaStyle: {
color: '#a4d8c2',
color0: '#f3d999'
}
},
graph: {
itemStyle: {
color: '#a4d8c2'
},
linkStyle: {
color: '#f3d999'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#E01F54'],
[0.8, '#b8d2c7'],
[1, '#001852']
],
width: 8
}
}
}
};
echarts.registerTheme('roma', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/royal.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#3f7ea6',
'#993366',
'#408000',
'#8c6f56',
'#a65149',
'#731f17',
'#adc2eb',
'#d9c3b0'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#3f7ea6'
}
},
visualMap: {
color: ['#3f7ea6', '#993366']
},
toolbox: {
color: ['#3f7ea6', '#3f7ea6', '#3f7ea6', '#3f7ea6']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#3f7ea6',
type: 'dashed'
},
crossStyle: {
color: '#3f7ea6'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(200,200,200,0.2)', // Fill the color
handleColor: '#3f7ea6' // Handle color
},
timeline: {
lineStyle: {
color: '#3f7ea6'
},
controlStyle: {
color: '#3f7ea6',
borderColor: '#3f7ea6'
}
},
candlestick: {
itemStyle: {
color: '#d9c3b0',
color0: '#8c6f56'
},
lineStyle: {
width: 1,
color: '#731f17',
color0: '#a65149'
},
areaStyle: {
color: '#3f7ea6',
color0: '#993366'
}
},
map: {
itemStyle: {
color: '#d9c3b0'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
graph: {
itemStyle: {
color: '#993366'
},
linkStyle: {
color: '#3f7ea6'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#d9c3b0'],
[0.8, '#3f7ea6'],
[1, '#731f17']
],
width: 8
}
}
}
};
echarts.registerTheme('royal', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/sakura.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#e52c3c',
'#f7b1ab',
'#fa506c',
'#f59288',
'#f8c4d8',
'#e54f5c',
'#f06d5c',
'#e54f80',
'#f29c9f',
'#eeb5b7'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#e52c3c'
}
},
visualMap: {
color: ['#e52c3c', '#f7b1ab']
},
dataRange: {
color: ['#e52c3c', '#f7b1ab']
},
candlestick: {
itemStyle: {
color: '#e52c3c',
color0: '#f59288'
},
lineStyle: {
width: 1,
color: '#e52c3c',
color0: '#f59288'
},
areaStyle: {
color: '#fa506c',
color0: '#f8c4d8'
}
},
map: {
itemStyle: {
color: '#e52c3c',
borderColor: '#fff',
borderWidth: 1
},
areaStyle: {
color: '#ccc'
},
label: {
color: 'rgba(139,69,19,1)',
show: false
}
},
graph: {
itemStyle: {
color: '#f2385a'
},
nodeStyle: {
brushType: 'both',
strokeColor: '#e54f5c'
},
linkStyle: {
color: '#f2385a',
strokeColor: '#e54f5c'
},
label: {
color: '#f2385a',
show: false
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#e52c3c'],
[0.8, '#f7b1ab'],
[1, '#fa506c']
],
width: 8
}
}
}
};
echarts.registerTheme('sakura', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/shine.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#c12e34',
'#e6b600',
'#0098d9',
'#2b821d',
'#005eaa',
'#339ca8',
'#cda819',
'#32a487'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal'
}
},
visualMap: {
color: ['#1790cf', '#a2d4e6']
},
toolbox: {
iconStyle: {
borderColor: '#06467c'
}
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.6)'
},
dataZoom: {
dataBackgroundColor: '#dedede',
fillerColor: 'rgba(154,217,247,0.2)',
handleColor: '#005eaa'
},
timeline: {
lineStyle: {
color: '#005eaa'
},
controlStyle: {
color: '#005eaa',
borderColor: '#005eaa'
}
},
candlestick: {
itemStyle: {
color: '#c12e34',
color0: '#2b821d'
},
lineStyle: {
width: 1,
color: '#c12e34',
color0: '#2b821d'
},
areaStyle: {
color: '#e6b600',
color0: '#005eaa'
}
},
graph: {
itemStyle: {
color: '#e6b600'
},
linkStyle: {
color: '#005eaa'
}
},
map: {
itemStyle: {
color: '#f2385a',
borderColor: '#eee',
areaColor: '#ddd'
},
areaStyle: {
color: '#ddd'
},
label: {
color: '#c12e34'
}
},
gauge: {
axisLine: {
show: true,
lineStyle: {
color: [
[0.2, '#2b821d'],
[0.8, '#005eaa'],
[1, '#c12e34']
],
width: 5
}
},
axisTick: {
splitNumber: 10,
length: 8,
lineStyle: {
color: 'auto'
}
},
axisLabel: {
color: 'auto'
},
splitLine: {
length: 12,
lineStyle: {
color: 'auto'
}
},
pointer: {
length: '90%',
width: 3,
color: 'auto'
},
title: {
color: '#333'
},
detail: {
color: 'auto'
}
}
};
echarts.registerTheme('shine', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/tech-blue.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#4d4d4d',
'#3a5897',
'#007bb6',
'#7094db',
'#0080ff',
'#b3b3ff',
'#00bdec',
'#33ccff',
'#ccddff',
'#eeeeee'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#00aecd'
}
},
visualMap: {
color: ['#00aecd', '#a2d4e6']
},
toolbox: {
color: ['#00aecd', '#00aecd', '#00aecd', '#00aecd']
},
tooltip: {
backgroundColor: 'rgba(0,0,0,0.5)',
axisPointer: {
// Axis indicator, coordinate trigger effective
type: 'line', // The default is a straight line: 'line' | 'shadow'
lineStyle: {
// Straight line indicator style settings
color: '#00aecd',
type: 'dashed'
},
crossStyle: {
color: '#00aecd'
},
shadowStyle: {
// Shadow indicator style settings
color: 'rgba(200,200,200,0.3)'
}
}
},
// Area scaling controller
dataZoom: {
dataBackgroundColor: '#eee', // Data background color
fillerColor: 'rgba(144,197,237,0.2)', // Fill the color
handleColor: '#00aecd' // Handle color
},
timeline: {
lineStyle: {
color: '#00aecd'
},
controlStyle: {
color: '#00aecd',
},
emphasis: {
controlStyle: {
color: '#00aecd'
}
}
},
candlestick: {
itemStyle: {
color: '#ddd',
color0: '#eee'
},
lineStyle: {
width: 1,
color: '#33ccff',
color0: '#1bb4cf'
},
areaStyle: {
color: '#7094db',
color0: '#33ccff'
}
},
chord: {
padding: 4,
itemStyle: {
color: '#7094db',
borderWidth: 1,
borderColor: 'rgba(128, 128, 128, 0.5)'
},
lineStyle: {
color: 'rgba(128, 128, 128, 0.5)'
},
areaStyle: {
color: '#33ccff'
}
},
graph: {
itemStyle: {
color: '#7094db'
},
linkStyle: {
color: '#33ccff'
}
},
map: {
itemStyle: {
color: '#7094db'
},
areaStyle: {
color: '#33ccff'
},
label: {
color: '#ddd'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [
[0.2, '#dddddd'],
[0.8, '#00aecd'],
[1, '#33ccff']
],
width: 8
}
}
}
};
echarts.registerTheme('tech-blue', theme);
});
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/area.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
title: {
text: 'Area Chart',
left: 'center',
top: '3%',
textStyle: {
fontWeight: 'normal'
}
},
grid: {
left: '3%',
right: '4%',
bottom: '12%',
containLabel: true
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday','Sunday']
},
yAxis: {
type: 'value',
splitNumber: 3
},
dataZoom: {
},
series: [
{
name:'Email',
type:'line',
stack: '总量',
areaStyle: {},
data:[120, 132, 101, 134, 90, 230, 210]
},
{
name:'联盟广告',
type:'line',
stack: '总量',
areaStyle: {},
data:[220, 182, 191, 234, 290, 330, 310]
},
{
name:'视频广告',
type:'line',
stack: '总量',
areaStyle: {},
data:[150, 232, 201, 154, 190, 330, 410]
},
{
name:'直接访问',
type:'line',
stack: '总量',
areaStyle: {},
data:[320, 332, 301, 334, 390, 330, 320]
},
{
name:'搜索引擎',
type:'line',
stack: '总量',
label: {
show: true,
position: 'top'
},
areaStyle: {},
data:[820, 932, 901, 934, 1290, 1330, 1320]
}
]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/bar.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
title: {
text: 'Bar Chart',
left: 'center',
top: '3%',
textStyle: {
fontWeight: 'normal'
}
},
toolbox: {
top: '3%',
feature: {
magicType: {
type: ['line', 'bar', 'stack', 'tiled']
},
restore: {},
dataZoom: {},
saveAsImage: {}
}
},
grid: {
left: '13%',
right: '5%',
bottom: '5%',
textStyle: {
fontWeight: 'normal'
}
},
xAxis: {
type: 'value'
},
yAxis: {
type: 'category',
data: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday','Sunday']
},
series: [
{
name:'直接访问',
type:'bar',
stack: '总量',
label: {
show: true,
position: 'insideRight'
},
data:[320, 302, 301, 334, 390, 330, 320]
},
{
name:'邮件营销',
type:'bar',
stack: '总量',
label: {
show: true,
position: 'insideRight'
},
data:[120, 132, 101, 134, 90, 230, 210]
},
{
name:'联盟广告',
type:'bar',
stack: '总量',
label: {
show: true,
position: 'insideRight'
},
data:[220, 182, 191, 234, 290, 330, 310]
},
{
name:'视频广告',
type:'bar',
stack: '总量',
label: {
show: true,
position: 'insideRight'
},
data:[150, 212, 201, 154, 190, 330, 410]
},
{
name:'搜索引擎',
type:'bar',
stack: '总量',
label: {
show: true,
position: 'insideRight'
},
data:[820, 832, 901, 934, 1290, 1330, 1320]
}
]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/graph.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
"series":[
{
"name":"Les Miserables",
"type":"graph",
"layout":"none",
"data":[
{
"id":"0",
"name":"Myriel",
"label":{
"formatter":"Myriel",
"show":false
},
"symbolSize":28.685715,
"x":-266.82776,
"y":299.6904,
"attributes":{
"modularity_class":0
},
"value":28.685715,
"category":0
},
{
"id":"1",
"name":"Napoleon",
"label":{
"formatter":"Napoleon",
"show":false
},
"symbolSize":4,
"x":-418.08344,
"y":446.8853,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"2",
"name":"MlleBaptistine",
"label":{
"formatter":"MlleBaptistine",
"show":false
},
"symbolSize":9.485714,
"x":-212.76357,
"y":245.29176,
"attributes":{
"modularity_class":1
},
"value":9.485714,
"category":1
},
{
"id":"3",
"name":"MmeMagloire",
"label":{
"formatter":"MmeMagloire",
"show":false
},
"symbolSize":9.485714,
"x":-242.82404,
"y":235.26283,
"attributes":{
"modularity_class":1
},
"value":9.485714,
"category":1
},
{
"id":"4",
"name":"CountessDeLo",
"label":{
"formatter":"CountessDeLo",
"show":false
},
"symbolSize":4,
"x":-379.30386,
"y":429.06424,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"5",
"name":"Geborand",
"label":{
"formatter":"Geborand",
"show":false
},
"symbolSize":4,
"x":-417.26337,
"y":406.03506,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"6",
"name":"Champtercier",
"label":{
"formatter":"Champtercier",
"show":false
},
"symbolSize":4,
"x":-332.6012,
"y":485.16974,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"7",
"name":"Cravatte",
"label":{
"formatter":"Cravatte",
"show":false
},
"symbolSize":4,
"x":-382.69568,
"y":475.09113,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"8",
"name":"Count",
"label":{
"formatter":"Count",
"show":false
},
"symbolSize":4,
"x":-320.384,
"y":387.17325,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"9",
"name":"OldMan",
"label":{
"formatter":"OldMan",
"show":false
},
"symbolSize":4,
"x":-344.39832,
"y":451.16772,
"attributes":{
"modularity_class":0
},
"value":4,
"category":0
},
{
"id":"10",
"name":"Labarre",
"label":{
"formatter":"Labarre",
"show":false
},
"symbolSize":4,
"x":-89.34107,
"y":234.56128,
"attributes":{
"modularity_class":1
},
"value":4,
"category":1
},
{
"id":"11",
"name":"Valjean",
"label":{
"formatter":"Valjean",
"show": false
},
"symbolSize":100,
"x":-87.93029,
"y":-6.8120565,
"attributes":{
"modularity_class":1
},
"value":100,
"category":1
},
{
"id":"12",
"name":"Marguerite",
"label":{
"formatter":"Marguerite",
"show":false
},
"symbolSize":6.742859,
"x":-339.77908,
"y":-184.69139,
"attributes":{
"modularity_class":1
},
"value":6.742859,
"category":1
},
{
"id":"13",
"name":"MmeDeR",
"label":{
"formatter":"MmeDeR",
"show":false
},
"symbolSize":4,
"x":-194.31313,
"y":178.55301,
"attributes":{
"modularity_class":1
},
"value":4,
"category":1
},
{
"id":"14",
"name":"Isabeau",
"label":{
"formatter":"Isabeau",
"show":false
},
"symbolSize":4,
"x":-158.05168,
"y":201.99768,
"attributes":{
"modularity_class":1
},
"value":4,
"category":1
},
{
"id":"15",
"name":"Gervais",
"label":{
"formatter":"Gervais",
"show":false
},
"symbolSize":4,
"x":-127.701546,
"y":242.55057,
"attributes":{
"modularity_class":1
},
"value":4,
"category":1
},
{
"id":"16",
"name":"Tholomyes",
"label":{
"formatter":"Tholomyes",
"show":false
},
"symbolSize":25.942856,
"x":-385.2226,
"y":-393.5572,
"attributes":{
"modularity_class":2
},
"value":25.942856,
"category":2
},
{
"id":"17",
"name":"Listolier",
"label":{
"formatter":"Listolier",
"show":false
},
"symbolSize":20.457146,
"x":-516.55884,
"y":-393.98975,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"18",
"name":"Fameuil",
"label":{
"formatter":"Fameuil",
"show":false
},
"symbolSize":20.457146,
"x":-464.79382,
"y":-493.57944,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"19",
"name":"Blacheville",
"label":{
"formatter":"Blacheville",
"show":false
},
"symbolSize":20.457146,
"x":-515.1624,
"y":-456.9891,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"20",
"name":"Favourite",
"label":{
"formatter":"Favourite",
"show":false
},
"symbolSize":20.457146,
"x":-408.12122,
"y":-464.5048,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"21",
"name":"Dahlia",
"label":{
"formatter":"Dahlia",
"show":false
},
"symbolSize":20.457146,
"x":-456.44113,
"y":-425.13303,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"22",
"name":"Zephine",
"label":{
"formatter":"Zephine",
"show":false
},
"symbolSize":20.457146,
"x":-459.1107,
"y":-362.5133,
"attributes":{
"modularity_class":2
},
"value":20.457146,
"category":2
},
{
"id":"23",
"name":"Fantine",
"label":{
"formatter":"Fantine",
"show": false
},
"symbolSize":42.4,
"x":-313.42786,
"y":-289.44803,
"attributes":{
"modularity_class":2
},
"value":42.4,
"category":2
},
{
"id":"24",
"name":"MmeThenardier",
"label":{
"formatter":"MmeThenardier",
"show": false
},
"symbolSize":31.428574,
"x":4.6313396,
"y":-273.8517,
"attributes":{
"modularity_class":7
},
"value":31.428574,
"category":7
},
{
"id":"25",
"name":"Thenardier",
"label":{
"formatter":"Thenardier",
"show": false
},
"symbolSize":45.142853,
"x":82.80825,
"y":-203.1144,
"attributes":{
"modularity_class":7
},
"value":45.142853,
"category":7
},
{
"id":"26",
"name":"Cosette",
"label":{
"formatter":"Cosette",
"show": false
},
"symbolSize":31.428574,
"x":78.64646,
"y":-31.512747,
"attributes":{
"modularity_class":6
},
"value":31.428574,
"category":6
},
{
"id":"27",
"name":"Javert",
"label":{
"formatter":"Javert",
"show": false
},
"symbolSize":47.88571,
"x":-81.46074,
"y":-204.20204,
"attributes":{
"modularity_class":7
},
"value":47.88571,
"category":7
},
{
"id":"28",
"name":"Fauchelevent",
"label":{
"formatter":"Fauchelevent",
"show":false
},
"symbolSize":12.228573,
"x":-225.73984,
"y":82.41631,
"attributes":{
"modularity_class":4
},
"value":12.228573,
"category":4
},
{
"id":"29",
"name":"Bamatabois",
"label":{
"formatter":"Bamatabois",
"show":false
},
"symbolSize":23.2,
"x":-385.6842,
"y":-20.206686,
"attributes":{
"modularity_class":3
},
"value":23.2,
"category":3
},
{
"id":"30",
"name":"Perpetue",
"label":{
"formatter":"Perpetue",
"show":false
},
"symbolSize":6.742859,
"x":-403.92447,
"y":-197.69823,
"attributes":{
"modularity_class":2
},
"value":6.742859,
"category":2
},
{
"id":"31",
"name":"Simplice",
"label":{
"formatter":"Simplice",
"show":false
},
"symbolSize":12.228573,
"x":-281.4253,
"y":-158.45137,
"attributes":{
"modularity_class":2
},
"value":12.228573,
"category":2
},
{
"id":"32",
"name":"Scaufflaire",
"label":{
"formatter":"Scaufflaire",
"show":false
},
"symbolSize":4,
"x":-122.41348,
"y":210.37503,
"attributes":{
"modularity_class":1
},
"value":4,
"category":1
},
{
"id":"33",
"name":"Woman1",
"label":{
"formatter":"Woman1",
"show":false
},
"symbolSize":6.742859,
"x":-234.6001,
"y":-113.15067,
"attributes":{
"modularity_class":1
},
"value":6.742859,
"category":1
},
{
"id":"34",
"name":"Judge",
"label":{
"formatter":"Judge",
"show":false
},
"symbolSize":17.714287,
"x":-387.84915,
"y":58.7059,
"attributes":{
"modularity_class":3
},
"value":17.714287,
"category":3
},
{
"id":"35",
"name":"Champmathieu",
"label":{
"formatter":"Champmathieu",
"show":false
},
"symbolSize":17.714287,
"x":-338.2307,
"y":87.48405,
"attributes":{
"modularity_class":3
},
"value":17.714287,
"category":3
},
{
"id":"36",
"name":"Brevet",
"label":{
"formatter":"Brevet",
"show":false
},
"symbolSize":17.714287,
"x":-453.26874,
"y":58.94648,
"attributes":{
"modularity_class":3
},
"value":17.714287,
"category":3
},
{
"id":"37",
"name":"Chenildieu",
"label":{
"formatter":"Chenildieu",
"show":false
},
"symbolSize":17.714287,
"x":-386.44904,
"y":140.05937,
"attributes":{
"modularity_class":3
},
"value":17.714287,
"category":3
},
{
"id":"38",
"name":"Cochepaille",
"label":{
"formatter":"Cochepaille",
"show":false
},
"symbolSize":17.714287,
"x":-446.7876,
"y":123.38005,
"attributes":{
"modularity_class":3
},
"value":17.714287,
"category":3
},
{
"id":"39",
"name":"Pontmercy",
"label":{
"formatter":"Pontmercy",
"show":false
},
"symbolSize":9.485714,
"x":336.49738,
"y":-269.55914,
"attributes":{
"modularity_class":6
},
"value":9.485714,
"category":6
},
{
"id":"40",
"name":"Boulatruelle",
"label":{
"formatter":"Boulatruelle",
"show":false
},
"symbolSize":4,
"x":29.187843,
"y":-460.13132,
"attributes":{
"modularity_class":7
},
"value":4,
"category":7
},
{
"id":"41",
"name":"Eponine",
"label":{
"formatter":"Eponine",
"show": false
},
"symbolSize":31.428574,
"x":238.36697,
"y":-210.00926,
"attributes":{
"modularity_class":7
},
"value":31.428574,
"category":7
},
{
"id":"42",
"name":"Anzelma",
"label":{
"formatter":"Anzelma",
"show":false
},
"symbolSize":9.485714,
"x":189.69513,
"y":-346.50662,
"attributes":{
"modularity_class":7
},
"value":9.485714,
"category":7
},
{
"id":"43",
"name":"Woman2",
"label":{
"formatter":"Woman2",
"show":false
},
"symbolSize":9.485714,
"x":-187.00418,
"y":-145.02663,
"attributes":{
"modularity_class":6
},
"value":9.485714,
"category":6
},
{
"id":"44",
"name":"MotherInnocent",
"label":{
"formatter":"MotherInnocent",
"show":false
},
"symbolSize":6.742859,
"x":-252.99521,
"y":129.87549,
"attributes":{
"modularity_class":4
},
"value":6.742859,
"category":4
},
{
"id":"45",
"name":"Gribier",
"label":{
"formatter":"Gribier",
"show":false
},
"symbolSize":4,
"x":-296.07935,
"y":163.11964,
"attributes":{
"modularity_class":4
},
"value":4,
"category":4
},
{
"id":"46",
"name":"Jondrette",
"label":{
"formatter":"Jondrette",
"show":false
},
"symbolSize":4,
"x":550.3201,
"y":522.4031,
"attributes":{
"modularity_class":5
},
"value":4,
"category":5
},
{
"id":"47",
"name":"MmeBurgon",
"label":{
"formatter":"MmeBurgon",
"show":false
},
"symbolSize":6.742859,
"x":488.13535,
"y":356.8573,
"attributes":{
"modularity_class":5
},
"value":6.742859,
"category":5
},
{
"id":"48",
"name":"Gavroche",
"label":{
"formatter":"Gavroche",
"show": false
},
"symbolSize":61.600006,
"x":387.89572,
"y":110.462326,
"attributes":{
"modularity_class":8
},
"value":61.600006,
"category":8
},
{
"id":"49",
"name":"Gillenormand",
"label":{
"formatter":"Gillenormand",
"show":false
},
"symbolSize":20.457146,
"x":126.4831,
"y":68.10622,
"attributes":{
"modularity_class":6
},
"value":20.457146,
"category":6
},
{
"id":"50",
"name":"Magnon",
"label":{
"formatter":"Magnon",
"show":false
},
"symbolSize":6.742859,
"x":127.07365,
"y":-113.05923,
"attributes":{
"modularity_class":6
},
"value":6.742859,
"category":6
},
{
"id":"51",
"name":"MlleGillenormand",
"label":{
"formatter":"MlleGillenormand",
"show":false
},
"symbolSize":20.457146,
"x":162.63559,
"y":117.6565,
"attributes":{
"modularity_class":6
},
"value":20.457146,
"category":6
},
{
"id":"52",
"name":"MmePontmercy",
"label":{
"formatter":"MmePontmercy",
"show":false
},
"symbolSize":6.742859,
"x":353.66415,
"y":-205.89165,
"attributes":{
"modularity_class":6
},
"value":6.742859,
"category":6
},
{
"id":"53",
"name":"MlleVaubois",
"label":{
"formatter":"MlleVaubois",
"show":false
},
"symbolSize":4,
"x":165.43939,
"y":339.7736,
"attributes":{
"modularity_class":6
},
"value":4,
"category":6
},
{
"id":"54",
"name":"LtGillenormand",
"label":{
"formatter":"LtGillenormand",
"show":false
},
"symbolSize":12.228573,
"x":137.69348,
"y":196.1069,
"attributes":{
"modularity_class":6
},
"value":12.228573,
"category":6
},
{
"id":"55",
"name":"Marius",
"label":{
"formatter":"Marius",
"show": false
},
"symbolSize":53.37143,
"x":206.44687,
"y":-13.805411,
"attributes":{
"modularity_class":6
},
"value":53.37143,
"category":6
},
{
"id":"56",
"name":"BaronessT",
"label":{
"formatter":"BaronessT",
"show":false
},
"symbolSize":6.742859,
"x":194.82993,
"y":224.78036,
"attributes":{
"modularity_class":6
},
"value":6.742859,
"category":6
},
{
"id":"57",
"name":"Mabeuf",
"label":{
"formatter":"Mabeuf",
"show": false
},
"symbolSize":31.428574,
"x":597.6618,
"y":135.18481,
"attributes":{
"modularity_class":8
},
"value":31.428574,
"category":8
},
{
"id":"58",
"name":"Enjolras",
"label":{
"formatter":"Enjolras",
"show": false
},
"symbolSize":42.4,
"x":355.78366,
"y":-74.882454,
"attributes":{
"modularity_class":8
},
"value":42.4,
"category":8
},
{
"id":"59",
"name":"Combeferre",
"label":{
"formatter":"Combeferre",
"show": false
},
"symbolSize":31.428574,
"x":515.2961,
"y":-46.167564,
"attributes":{
"modularity_class":8
},
"value":31.428574,
"category":8
},
{
"id":"60",
"name":"Prouvaire",
"label":{
"formatter":"Prouvaire",
"show":false
},
"symbolSize":25.942856,
"x":614.29285,
"y":-69.3104,
"attributes":{
"modularity_class":8
},
"value":25.942856,
"category":8
},
{
"id":"61",
"name":"Feuilly",
"label":{
"formatter":"Feuilly",
"show": false
},
"symbolSize":31.428574,
"x":550.1917,
"y":-128.17537,
"attributes":{
"modularity_class":8
},
"value":31.428574,
"category":8
},
{
"id":"62",
"name":"Courfeyrac",
"label":{
"formatter":"Courfeyrac",
"show": false
},
"symbolSize":36.91429,
"x":436.17184,
"y":-12.7286825,
"attributes":{
"modularity_class":8
},
"value":36.91429,
"category":8
},
{
"id":"63",
"name":"Bahorel",
"label":{
"formatter":"Bahorel",
"show": false
},
"symbolSize":34.17143,
"x":602.55225,
"y":16.421427,
"attributes":{
"modularity_class":8
},
"value":34.17143,
"category":8
},
{
"id":"64",
"name":"Bossuet",
"label":{
"formatter":"Bossuet",
"show": false
},
"symbolSize":36.91429,
"x":455.81955,
"y":-115.45826,
"attributes":{
"modularity_class":8
},
"value":36.91429,
"category":8
},
{
"id":"65",
"name":"Joly",
"label":{
"formatter":"Joly",
"show": false
},
"symbolSize":34.17143,
"x":516.40784,
"y":47.242233,
"attributes":{
"modularity_class":8
},
"value":34.17143,
"category":8
},
{
"id":"66",
"name":"Grantaire",
"label":{
"formatter":"Grantaire",
"show":false
},
"symbolSize":28.685715,
"x":646.4313,
"y":-151.06331,
"attributes":{
"modularity_class":8
},
"value":28.685715,
"category":8
},
{
"id":"67",
"name":"MotherPlutarch",
"label":{
"formatter":"MotherPlutarch",
"show":false
},
"symbolSize":4,
"x":668.9568,
"y":204.65488,
"attributes":{
"modularity_class":8
},
"value":4,
"category":8
},
{
"id":"68",
"name":"Gueulemer",
"label":{
"formatter":"Gueulemer",
"show":false
},
"symbolSize":28.685715,
"x":78.4799,
"y":-347.15146,
"attributes":{
"modularity_class":7
},
"value":28.685715,
"category":7
},
{
"id":"69",
"name":"Babet",
"label":{
"formatter":"Babet",
"show":false
},
"symbolSize":28.685715,
"x":150.35959,
"y":-298.50797,
"attributes":{
"modularity_class":7
},
"value":28.685715,
"category":7
},
{
"id":"70",
"name":"Claquesous",
"label":{
"formatter":"Claquesous",
"show":false
},
"symbolSize":28.685715,
"x":137.3717,
"y":-410.2809,
"attributes":{
"modularity_class":7
},
"value":28.685715,
"category":7
},
{
"id":"71",
"name":"Montparnasse",
"label":{
"formatter":"Montparnasse",
"show":false
},
"symbolSize":25.942856,
"x":234.87747,
"y":-400.85983,
"attributes":{
"modularity_class":7
},
"value":25.942856,
"category":7
},
{
"id":"72",
"name":"Toussaint",
"label":{
"formatter":"Toussaint",
"show":false
},
"symbolSize":9.485714,
"x":40.942253,
"y":113.78272,
"attributes":{
"modularity_class":1
},
"value":9.485714,
"category":1
},
{
"id":"73",
"name":"Child1",
"label":{
"formatter":"Child1",
"show":false
},
"symbolSize":6.742859,
"x":437.939,
"y":291.58234,
"attributes":{
"modularity_class":8
},
"value":6.742859,
"category":8
},
{
"id":"74",
"name":"Child2",
"label":{
"formatter":"Child2",
"show":false
},
"symbolSize":6.742859,
"x":466.04922,
"y":283.3606,
"attributes":{
"modularity_class":8
},
"value":6.742859,
"category":8
},
{
"id":"75",
"name":"Brujon",
"label":{
"formatter":"Brujon",
"show":false
},
"symbolSize":20.457146,
"x":238.79364,
"y":-314.06345,
"attributes":{
"modularity_class":7
},
"value":20.457146,
"category":7
},
{
"id":"76",
"name":"MmeHucheloup",
"label":{
"formatter":"MmeHucheloup",
"show":false
},
"symbolSize":20.457146,
"x":712.18353,
"y":4.8131495,
"attributes":{
"modularity_class":8
},
"value":20.457146,
"category":8
}
],
"links":[
{
"id":"0",
"name":null,
"source":"1",
"target":"0"
},
{
"id":"1",
"name":null,
"source":"2",
"target":"0"
},
{
"id":"2",
"name":null,
"source":"3",
"target":"0"
},
{
"id":"3",
"name":null,
"source":"3",
"target":"2"
},
{
"id":"4",
"name":null,
"source":"4",
"target":"0"
},
{
"id":"5",
"name":null,
"source":"5",
"target":"0"
},
{
"id":"6",
"name":null,
"source":"6",
"target":"0"
},
{
"id":"7",
"name":null,
"source":"7",
"target":"0"
},
{
"id":"8",
"name":null,
"source":"8",
"target":"0"
},
{
"id":"9",
"name":null,
"source":"9",
"target":"0"
},
{
"id":"13",
"name":null,
"source":"11",
"target":"0"
},
{
"id":null,
"name":null,
"source":"11",
"target":"2"
},
{
"id":"11",
"name":null,
"source":"11",
"target":"3"
},
{
"id":"10",
"name":null,
"source":"11",
"target":"10"
},
{
"id":"14",
"name":null,
"source":"12",
"target":"11"
},
{
"id":"15",
"name":null,
"source":"13",
"target":"11"
},
{
"id":"16",
"name":null,
"source":"14",
"target":"11"
},
{
"id":"17",
"name":null,
"source":"15",
"target":"11"
},
{
"id":"18",
"name":null,
"source":"17",
"target":"16"
},
{
"id":"19",
"name":null,
"source":"18",
"target":"16"
},
{
"id":"20",
"name":null,
"source":"18",
"target":"17"
},
{
"id":"21",
"name":null,
"source":"19",
"target":"16"
},
{
"id":"22",
"name":null,
"source":"19",
"target":"17"
},
{
"id":"23",
"name":null,
"source":"19",
"target":"18"
},
{
"id":"24",
"name":null,
"source":"20",
"target":"16"
},
{
"id":"25",
"name":null,
"source":"20",
"target":"17"
},
{
"id":"26",
"name":null,
"source":"20",
"target":"18"
},
{
"id":"27",
"name":null,
"source":"20",
"target":"19"
},
{
"id":"28",
"name":null,
"source":"21",
"target":"16"
},
{
"id":"29",
"name":null,
"source":"21",
"target":"17"
},
{
"id":"30",
"name":null,
"source":"21",
"target":"18"
},
{
"id":"31",
"name":null,
"source":"21",
"target":"19"
},
{
"id":"32",
"name":null,
"source":"21",
"target":"20"
},
{
"id":"33",
"name":null,
"source":"22",
"target":"16"
},
{
"id":"34",
"name":null,
"source":"22",
"target":"17"
},
{
"id":"35",
"name":null,
"source":"22",
"target":"18"
},
{
"id":"36",
"name":null,
"source":"22",
"target":"19"
},
{
"id":"37",
"name":null,
"source":"22",
"target":"20"
},
{
"id":"38",
"name":null,
"source":"22",
"target":"21"
},
{
"id":"47",
"name":null,
"source":"23",
"target":"11"
},
{
"id":"46",
"name":null,
"source":"23",
"target":"12"
},
{
"id":"39",
"name":null,
"source":"23",
"target":"16"
},
{
"id":"40",
"name":null,
"source":"23",
"target":"17"
},
{
"id":"41",
"name":null,
"source":"23",
"target":"18"
},
{
"id":"42",
"name":null,
"source":"23",
"target":"19"
},
{
"id":"43",
"name":null,
"source":"23",
"target":"20"
},
{
"id":"44",
"name":null,
"source":"23",
"target":"21"
},
{
"id":"45",
"name":null,
"source":"23",
"target":"22"
},
{
"id":null,
"name":null,
"source":"24",
"target":"11"
},
{
"id":"48",
"name":null,
"source":"24",
"target":"23"
},
{
"id":"52",
"name":null,
"source":"25",
"target":"11"
},
{
"id":"51",
"name":null,
"source":"25",
"target":"23"
},
{
"id":"50",
"name":null,
"source":"25",
"target":"24"
},
{
"id":null,
"name":null,
"source":"26",
"target":"11"
},
{
"id":null,
"name":null,
"source":"26",
"target":"16"
},
{
"id":"53",
"name":null,
"source":"26",
"target":"24"
},
{
"id":"56",
"name":null,
"source":"26",
"target":"25"
},
{
"id":"57",
"name":null,
"source":"27",
"target":"11"
},
{
"id":"58",
"name":null,
"source":"27",
"target":"23"
},
{
"id":null,
"name":null,
"source":"27",
"target":"24"
},
{
"id":"59",
"name":null,
"source":"27",
"target":"25"
},
{
"id":"61",
"name":null,
"source":"27",
"target":"26"
},
{
"id":"62",
"name":null,
"source":"28",
"target":"11"
},
{
"id":"63",
"name":null,
"source":"28",
"target":"27"
},
{
"id":"66",
"name":null,
"source":"29",
"target":"11"
},
{
"id":"64",
"name":null,
"source":"29",
"target":"23"
},
{
"id":"65",
"name":null,
"source":"29",
"target":"27"
},
{
"id":"67",
"name":null,
"source":"30",
"target":"23"
},
{
"id":null,
"name":null,
"source":"31",
"target":"11"
},
{
"id":null,
"name":null,
"source":"31",
"target":"23"
},
{
"id":null,
"name":null,
"source":"31",
"target":"27"
},
{
"id":"68",
"name":null,
"source":"31",
"target":"30"
},
{
"id":"72",
"name":null,
"source":"32",
"target":"11"
},
{
"id":"73",
"name":null,
"source":"33",
"target":"11"
},
{
"id":"74",
"name":null,
"source":"33",
"target":"27"
},
{
"id":"75",
"name":null,
"source":"34",
"target":"11"
},
{
"id":"76",
"name":null,
"source":"34",
"target":"29"
},
{
"id":"77",
"name":null,
"source":"35",
"target":"11"
},
{
"id":null,
"name":null,
"source":"35",
"target":"29"
},
{
"id":"78",
"name":null,
"source":"35",
"target":"34"
},
{
"id":"82",
"name":null,
"source":"36",
"target":"11"
},
{
"id":"83",
"name":null,
"source":"36",
"target":"29"
},
{
"id":"80",
"name":null,
"source":"36",
"target":"34"
},
{
"id":"81",
"name":null,
"source":"36",
"target":"35"
},
{
"id":"87",
"name":null,
"source":"37",
"target":"11"
},
{
"id":"88",
"name":null,
"source":"37",
"target":"29"
},
{
"id":"84",
"name":null,
"source":"37",
"target":"34"
},
{
"id":"85",
"name":null,
"source":"37",
"target":"35"
},
{
"id":"86",
"name":null,
"source":"37",
"target":"36"
},
{
"id":"93",
"name":null,
"source":"38",
"target":"11"
},
{
"id":"94",
"name":null,
"source":"38",
"target":"29"
},
{
"id":"89",
"name":null,
"source":"38",
"target":"34"
},
{
"id":"90",
"name":null,
"source":"38",
"target":"35"
},
{
"id":"91",
"name":null,
"source":"38",
"target":"36"
},
{
"id":"92",
"name":null,
"source":"38",
"target":"37"
},
{
"id":"95",
"name":null,
"source":"39",
"target":"25"
},
{
"id":"96",
"name":null,
"source":"40",
"target":"25"
},
{
"id":"97",
"name":null,
"source":"41",
"target":"24"
},
{
"id":"98",
"name":null,
"source":"41",
"target":"25"
},
{
"id":"101",
"name":null,
"source":"42",
"target":"24"
},
{
"id":"100",
"name":null,
"source":"42",
"target":"25"
},
{
"id":"99",
"name":null,
"source":"42",
"target":"41"
},
{
"id":"102",
"name":null,
"source":"43",
"target":"11"
},
{
"id":"103",
"name":null,
"source":"43",
"target":"26"
},
{
"id":"104",
"name":null,
"source":"43",
"target":"27"
},
{
"id":null,
"name":null,
"source":"44",
"target":"11"
},
{
"id":"105",
"name":null,
"source":"44",
"target":"28"
},
{
"id":"107",
"name":null,
"source":"45",
"target":"28"
},
{
"id":"108",
"name":null,
"source":"47",
"target":"46"
},
{
"id":"112",
"name":null,
"source":"48",
"target":"11"
},
{
"id":"110",
"name":null,
"source":"48",
"target":"25"
},
{
"id":"111",
"name":null,
"source":"48",
"target":"27"
},
{
"id":"109",
"name":null,
"source":"48",
"target":"47"
},
{
"id":null,
"name":null,
"source":"49",
"target":"11"
},
{
"id":"113",
"name":null,
"source":"49",
"target":"26"
},
{
"id":null,
"name":null,
"source":"50",
"target":"24"
},
{
"id":"115",
"name":null,
"source":"50",
"target":"49"
},
{
"id":"119",
"name":null,
"source":"51",
"target":"11"
},
{
"id":"118",
"name":null,
"source":"51",
"target":"26"
},
{
"id":"117",
"name":null,
"source":"51",
"target":"49"
},
{
"id":null,
"name":null,
"source":"52",
"target":"39"
},
{
"id":"120",
"name":null,
"source":"52",
"target":"51"
},
{
"id":"122",
"name":null,
"source":"53",
"target":"51"
},
{
"id":"125",
"name":null,
"source":"54",
"target":"26"
},
{
"id":"124",
"name":null,
"source":"54",
"target":"49"
},
{
"id":"123",
"name":null,
"source":"54",
"target":"51"
},
{
"id":"131",
"name":null,
"source":"55",
"target":"11"
},
{
"id":"132",
"name":null,
"source":"55",
"target":"16"
},
{
"id":"133",
"name":null,
"source":"55",
"target":"25"
},
{
"id":null,
"name":null,
"source":"55",
"target":"26"
},
{
"id":"128",
"name":null,
"source":"55",
"target":"39"
},
{
"id":"134",
"name":null,
"source":"55",
"target":"41"
},
{
"id":"135",
"name":null,
"source":"55",
"target":"48"
},
{
"id":"127",
"name":null,
"source":"55",
"target":"49"
},
{
"id":"126",
"name":null,
"source":"55",
"target":"51"
},
{
"id":"129",
"name":null,
"source":"55",
"target":"54"
},
{
"id":"136",
"name":null,
"source":"56",
"target":"49"
},
{
"id":"137",
"name":null,
"source":"56",
"target":"55"
},
{
"id":null,
"name":null,
"source":"57",
"target":"41"
},
{
"id":null,
"name":null,
"source":"57",
"target":"48"
},
{
"id":"138",
"name":null,
"source":"57",
"target":"55"
},
{
"id":"145",
"name":null,
"source":"58",
"target":"11"
},
{
"id":null,
"name":null,
"source":"58",
"target":"27"
},
{
"id":"142",
"name":null,
"source":"58",
"target":"48"
},
{
"id":"141",
"name":null,
"source":"58",
"target":"55"
},
{
"id":"144",
"name":null,
"source":"58",
"target":"57"
},
{
"id":"148",
"name":null,
"source":"59",
"target":"48"
},
{
"id":"147",
"name":null,
"source":"59",
"target":"55"
},
{
"id":null,
"name":null,
"source":"59",
"target":"57"
},
{
"id":"146",
"name":null,
"source":"59",
"target":"58"
},
{
"id":"150",
"name":null,
"source":"60",
"target":"48"
},
{
"id":"151",
"name":null,
"source":"60",
"target":"58"
},
{
"id":"152",
"name":null,
"source":"60",
"target":"59"
},
{
"id":"153",
"name":null,
"source":"61",
"target":"48"
},
{
"id":"158",
"name":null,
"source":"61",
"target":"55"
},
{
"id":"157",
"name":null,
"source":"61",
"target":"57"
},
{
"id":"154",
"name":null,
"source":"61",
"target":"58"
},
{
"id":"156",
"name":null,
"source":"61",
"target":"59"
},
{
"id":"155",
"name":null,
"source":"61",
"target":"60"
},
{
"id":"164",
"name":null,
"source":"62",
"target":"41"
},
{
"id":"162",
"name":null,
"source":"62",
"target":"48"
},
{
"id":"159",
"name":null,
"source":"62",
"target":"55"
},
{
"id":null,
"name":null,
"source":"62",
"target":"57"
},
{
"id":"160",
"name":null,
"source":"62",
"target":"58"
},
{
"id":"161",
"name":null,
"source":"62",
"target":"59"
},
{
"id":null,
"name":null,
"source":"62",
"target":"60"
},
{
"id":"165",
"name":null,
"source":"62",
"target":"61"
},
{
"id":null,
"name":null,
"source":"63",
"target":"48"
},
{
"id":"174",
"name":null,
"source":"63",
"target":"55"
},
{
"id":null,
"name":null,
"source":"63",
"target":"57"
},
{
"id":null,
"name":null,
"source":"63",
"target":"58"
},
{
"id":"167",
"name":null,
"source":"63",
"target":"59"
},
{
"id":null,
"name":null,
"source":"63",
"target":"60"
},
{
"id":"172",
"name":null,
"source":"63",
"target":"61"
},
{
"id":"169",
"name":null,
"source":"63",
"target":"62"
},
{
"id":"184",
"name":null,
"source":"64",
"target":"11"
},
{
"id":null,
"name":null,
"source":"64",
"target":"48"
},
{
"id":"175",
"name":null,
"source":"64",
"target":"55"
},
{
"id":"183",
"name":null,
"source":"64",
"target":"57"
},
{
"id":"179",
"name":null,
"source":"64",
"target":"58"
},
{
"id":"182",
"name":null,
"source":"64",
"target":"59"
},
{
"id":"181",
"name":null,
"source":"64",
"target":"60"
},
{
"id":"180",
"name":null,
"source":"64",
"target":"61"
},
{
"id":"176",
"name":null,
"source":"64",
"target":"62"
},
{
"id":"178",
"name":null,
"source":"64",
"target":"63"
},
{
"id":"187",
"name":null,
"source":"65",
"target":"48"
},
{
"id":"194",
"name":null,
"source":"65",
"target":"55"
},
{
"id":"193",
"name":null,
"source":"65",
"target":"57"
},
{
"id":null,
"name":null,
"source":"65",
"target":"58"
},
{
"id":"192",
"name":null,
"source":"65",
"target":"59"
},
{
"id":null,
"name":null,
"source":"65",
"target":"60"
},
{
"id":"190",
"name":null,
"source":"65",
"target":"61"
},
{
"id":"188",
"name":null,
"source":"65",
"target":"62"
},
{
"id":"185",
"name":null,
"source":"65",
"target":"63"
},
{
"id":"186",
"name":null,
"source":"65",
"target":"64"
},
{
"id":"200",
"name":null,
"source":"66",
"target":"48"
},
{
"id":"196",
"name":null,
"source":"66",
"target":"58"
},
{
"id":"197",
"name":null,
"source":"66",
"target":"59"
},
{
"id":"203",
"name":null,
"source":"66",
"target":"60"
},
{
"id":"202",
"name":null,
"source":"66",
"target":"61"
},
{
"id":"198",
"name":null,
"source":"66",
"target":"62"
},
{
"id":"201",
"name":null,
"source":"66",
"target":"63"
},
{
"id":"195",
"name":null,
"source":"66",
"target":"64"
},
{
"id":"199",
"name":null,
"source":"66",
"target":"65"
},
{
"id":"204",
"name":null,
"source":"67",
"target":"57"
},
{
"id":null,
"name":null,
"source":"68",
"target":"11"
},
{
"id":null,
"name":null,
"source":"68",
"target":"24"
},
{
"id":"205",
"name":null,
"source":"68",
"target":"25"
},
{
"id":"208",
"name":null,
"source":"68",
"target":"27"
},
{
"id":null,
"name":null,
"source":"68",
"target":"41"
},
{
"id":"209",
"name":null,
"source":"68",
"target":"48"
},
{
"id":"213",
"name":null,
"source":"69",
"target":"11"
},
{
"id":"214",
"name":null,
"source":"69",
"target":"24"
},
{
"id":"211",
"name":null,
"source":"69",
"target":"25"
},
{
"id":null,
"name":null,
"source":"69",
"target":"27"
},
{
"id":"217",
"name":null,
"source":"69",
"target":"41"
},
{
"id":"216",
"name":null,
"source":"69",
"target":"48"
},
{
"id":"212",
"name":null,
"source":"69",
"target":"68"
},
{
"id":"221",
"name":null,
"source":"70",
"target":"11"
},
{
"id":"222",
"name":null,
"source":"70",
"target":"24"
},
{
"id":"218",
"name":null,
"source":"70",
"target":"25"
},
{
"id":"223",
"name":null,
"source":"70",
"target":"27"
},
{
"id":"224",
"name":null,
"source":"70",
"target":"41"
},
{
"id":"225",
"name":null,
"source":"70",
"target":"58"
},
{
"id":"220",
"name":null,
"source":"70",
"target":"68"
},
{
"id":"219",
"name":null,
"source":"70",
"target":"69"
},
{
"id":"230",
"name":null,
"source":"71",
"target":"11"
},
{
"id":"233",
"name":null,
"source":"71",
"target":"25"
},
{
"id":"226",
"name":null,
"source":"71",
"target":"27"
},
{
"id":"232",
"name":null,
"source":"71",
"target":"41"
},
{
"id":null,
"name":null,
"source":"71",
"target":"48"
},
{
"id":"228",
"name":null,
"source":"71",
"target":"68"
},
{
"id":"227",
"name":null,
"source":"71",
"target":"69"
},
{
"id":"229",
"name":null,
"source":"71",
"target":"70"
},
{
"id":"236",
"name":null,
"source":"72",
"target":"11"
},
{
"id":"234",
"name":null,
"source":"72",
"target":"26"
},
{
"id":"235",
"name":null,
"source":"72",
"target":"27"
},
{
"id":"237",
"name":null,
"source":"73",
"target":"48"
},
{
"id":"238",
"name":null,
"source":"74",
"target":"48"
},
{
"id":"239",
"name":null,
"source":"74",
"target":"73"
},
{
"id":"242",
"name":null,
"source":"75",
"target":"25"
},
{
"id":"244",
"name":null,
"source":"75",
"target":"41"
},
{
"id":null,
"name":null,
"source":"75",
"target":"48"
},
{
"id":"241",
"name":null,
"source":"75",
"target":"68"
},
{
"id":"240",
"name":null,
"source":"75",
"target":"69"
},
{
"id":"245",
"name":null,
"source":"75",
"target":"70"
},
{
"id":"246",
"name":null,
"source":"75",
"target":"71"
},
{
"id":"252",
"name":null,
"source":"76",
"target":"48"
},
{
"id":"253",
"name":null,
"source":"76",
"target":"58"
},
{
"id":"251",
"name":null,
"source":"76",
"target":"62"
},
{
"id":"250",
"name":null,
"source":"76",
"target":"63"
},
{
"id":"247",
"name":null,
"source":"76",
"target":"64"
},
{
"id":"248",
"name":null,
"source":"76",
"target":"65"
},
{
"id":"249",
"name":null,
"source":"76",
"target":"66"
}
],
"categories":[
{
"name":"类目0"
},
{
"name":"类目1"
},
{
"name":"类目2"
},
{
"name":"类目3"
},
{
"name":"类目4"
},
{
"name":"类目5"
},
{
"name":"类目6"
},
{
"name":"类目7"
},
{
"name":"类目8"
}
],
"roam":true,
"label":{
"position":"right"
},
"lineStyle":{
"curveness":0.3
}
}
]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/map.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
visualMap: {
show: true,
min: 0,
max: 1500,
right: 50,
top: 'middle',
text:['高','低']
// orient: 'horizontal'
},
selectedMode: 'single',
series : [
{
name: 'iphone3',
type: 'map',
map: 'china',
showLegendSymbol: true,
label: {
show: false,
},
emphasis: {
label: {
show: false,
}
},
data:[
{name: '北京',value: 500},
{name: '天津',value: 500},
{name: '上海',value: 500},
{name: '重庆',value: 500},
{name: '河北',value: 500},
{name: '河南',value: 500},
{name: '云南',value: 500},
{name: '辽宁',value: 500},
{name: '黑龙江',value: 500},
{name: '湖南',value: 500},
{name: '安徽',value: 500},
{name: '山东',value: 500},
{name: '新疆',value: 500},
{name: '江苏',value: 500},
{name: '浙江',value: 500},
{name: '江西',value: 500},
{name: '湖北',value: 500},
{name: '广西',value: 500},
{name: '甘肃',value: 500},
{name: '山西',value: 500},
{name: '内蒙古',value: 500},
{name: '陕西',value: 500},
{name: '吉林',value: 500},
{name: '福建',value: 500},
{name: '贵州',value: 500},
{name: '广东',value: 500},
{name: '青海',value: 500},
{name: '西藏',value: 500},
{name: '四川',value: 500},
{name: '宁夏',value: 500},
{name: '海南',value: 500},
{name: '台湾',value: 500},
{name: '香港',value: 500},
{name: '澳门',value: 500}
]
},
{
name: 'iphone4',
type: 'map',
mapType: 'china',
showLegendSymbol: true,
label: {
show: false,
},
emphasis: {
label: {
show: false
}
},
data:[
{name: '北京',value: 500},
{name: '天津',value: 500},
{name: '上海',value: 500},
{name: '重庆',value: 500},
{name: '河北',value: 500},
{name: '安徽',value: 500},
{name: '新疆',value: 500},
{name: '浙江',value: 500},
{name: '江西',value: 500},
{name: '山西',value: 500},
{name: '内蒙古',value: 500},
{name: '吉林',value: 500},
{name: '福建',value: 500},
{name: '广东',value: 500},
{name: '西藏',value: 500},
{name: '四川',value: 500},
{name: '宁夏',value: 500},
{name: '香港',value: 500},
{name: '澳门',value: 500}
]
},
{
name: 'iphone5',
type: 'map',
mapType: 'china',
showLegendSymbol: true,
label: {
show: false,
},
emphasis: {
label: {
show: false
}
},
data:[
{name: '北京',value: 500},
{name: '天津',value: 500},
{name: '上海',value: 500},
{name: '广东',value: 500},
{name: '台湾',value: 500},
{name: '香港',value: 500},
{name: '澳门',value: 500}
]
}
]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/pie.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
legend: {
bottom: '5%',
data: ['rose1', 'rose2', 'rose3', 'rose4']
},
series : [
{
name:'半径模式',
type:'pie',
radius : [20, 80],
center : ['25%', 110],
label: {
show: false,
},
lableLine: {
show: false,
},
emphasis: {
label: {
show: true
},
lableLine: {
show: true
}
},
data:[
{value:10, name:'rose1'},
{value:5, name:'rose2'},
{value:15, name:'rose3'},
{value:25, name:'rose4'},
{value:20, name:'rose5'},
{value:35, name:'rose6'},
{value:30, name:'rose7'},
{value:40, name:'rose8'}
]
},
{
name:'面积模式',
type:'pie',
radius : [30, 80],
center : ['75%', 110],
roseType : 'area',
labelLine: {
length: 5
},
data:[
{value:10, name:'rose1'},
{value:5, name:'rose2'},
{value:15, name:'rose3'},
{value:25, name:'rose4'},
{value:20, name:'rose5'},
{value:35, name:'rose6'},
{value:30, name:'rose7'},
{value:40, name:'rose8'}
]
},
{
name:'仪表盘',
type:'gauge',
radius : 100,
center : ['50%', 280],
detail : {formatter:'{value}%'},
data:[
{value:50, name:'Gauge'}
]
}
]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/option/scatter.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
export default {
timeline: {
left: '2%',
right: '2%',
data: [
'2002-01-01','2003-01-01','2004-01-01',
{
value: '2005-01-01',
symbol: 'diamond',
symbolSize: 16
},
'2006-01-01', '2007-01-01','2008-01-01','2009-01-01','2010-01-01',
{
value: '2011-01-01',
symbol: 'diamond',
symbolSize: 18
}
],
label: {
formatter : function(s) {
return (new Date(s)).getFullYear();
}
}
},
options: [{
grid: {
left: '13%',
right: '5%',
bottom: '20%'
},
xAxis: {
type : 'value',
scale:true,
axisLabel : {
formatter: '{value} cm'
}
},
yAxis: {
type : 'value',
scale:true,
axisLabel : {
formatter: '{value} kg'
}
},
series : [
{
name:'女性',
type:'scatter',
data: [[161.2, 51.6], [167.5, 59.0], [159.5, 49.2], [157.0, 63.0], [155.8, 53.6],
[170.0, 59.0], [159.1, 47.6], [166.0, 69.8], [176.2, 66.8], [160.2, 75.2],
[172.5, 55.2], [170.9, 54.2], [172.9, 62.5], [153.4, 42.0], [160.0, 50.0],
[147.2, 49.8], [168.2, 49.2], [175.0, 73.2], [157.0, 47.8], [167.6, 68.8],
[159.5, 50.6], [175.0, 82.5], [166.8, 57.2], [176.5, 87.8], [170.2, 72.8],
[174.0, 54.5], [173.0, 59.8], [179.9, 67.3], [170.5, 67.8], [160.0, 47.0],
[154.4, 46.2], [162.0, 55.0], [176.5, 83.0], [160.0, 54.4], [152.0, 45.8],
[162.1, 53.6], [170.0, 73.2], [160.2, 52.1], [161.3, 67.9], [166.4, 56.6],
[168.9, 62.3], [163.8, 58.5], [167.6, 54.5], [160.0, 50.2], [161.3, 60.3],
[167.6, 58.3], [165.1, 56.2], [160.0, 50.2], [170.0, 72.9], [157.5, 59.8],
[167.6, 61.0], [160.7, 69.1], [163.2, 55.9], [152.4, 46.5], [157.5, 54.3],
[168.3, 54.8], [180.3, 60.7], [165.5, 60.0], [165.0, 62.0], [164.5, 60.3],
[156.0, 52.7], [160.0, 74.3], [163.0, 62.0], [165.7, 73.1], [161.0, 80.0],
[162.0, 54.7], [166.0, 53.2], [174.0, 75.7], [172.7, 61.1], [167.6, 55.7],
[151.1, 48.7], [164.5, 52.3], [163.5, 50.0], [152.0, 59.3], [169.0, 62.5],
[164.0, 55.7], [161.2, 54.8], [155.0, 45.9], [170.0, 70.6], [176.2, 67.2],
[170.0, 69.4], [162.5, 58.2], [170.3, 64.8], [164.1, 71.6], [169.5, 52.8],
[163.2, 59.8], [154.5, 49.0], [159.8, 50.0], [173.2, 69.2], [170.0, 55.9],
[161.4, 63.4], [169.0, 58.2], [166.2, 58.6], [159.4, 45.7], [162.5, 52.2],
[159.0, 48.6], [162.8, 57.8], [159.0, 55.6], [179.8, 66.8], [162.9, 59.4],
[161.0, 53.6], [151.1, 73.2], [168.2, 53.4], [168.9, 69.0], [173.2, 58.4],
[171.8, 56.2], [178.0, 70.6], [164.3, 59.8], [163.0, 72.0], [168.5, 65.2],
[166.8, 56.6], [172.7, 105.2], [163.5, 51.8], [169.4, 63.4], [167.8, 59.0],
[159.5, 47.6], [167.6, 63.0], [161.2, 55.2], [160.0, 45.0], [163.2, 54.0],
[162.2, 50.2], [161.3, 60.2], [149.5, 44.8], [157.5, 58.8], [163.2, 56.4],
[172.7, 62.0], [155.0, 49.2], [156.5, 67.2], [164.0, 53.8], [160.9, 54.4],
[162.8, 58.0], [167.0, 59.8], [160.0, 54.8], [160.0, 43.2], [168.9, 60.5],
[158.2, 46.4], [156.0, 64.4], [160.0, 48.8], [167.1, 62.2], [158.0, 55.5],
[167.6, 57.8], [156.0, 54.6], [162.1, 59.2], [173.4, 52.7], [159.8, 53.2],
[170.5, 64.5], [159.2, 51.8], [157.5, 56.0], [161.3, 63.6], [162.6, 63.2],
[160.0, 59.5], [168.9, 56.8], [165.1, 64.1], [162.6, 50.0], [165.1, 72.3],
[166.4, 55.0], [160.0, 55.9], [152.4, 60.4], [170.2, 69.1], [162.6, 84.5],
[170.2, 55.9], [158.8, 55.5], [172.7, 69.5], [167.6, 76.4], [162.6, 61.4],
[167.6, 65.9], [156.2, 58.6], [175.2, 66.8], [172.1, 56.6], [162.6, 58.6],
[160.0, 55.9], [165.1, 59.1], [182.9, 81.8], [166.4, 70.7], [165.1, 56.8],
[177.8, 60.0], [165.1, 58.2], [175.3, 72.7], [154.9, 54.1], [158.8, 49.1],
[172.7, 75.9], [168.9, 55.0], [161.3, 57.3], [167.6, 55.0], [165.1, 65.5],
[175.3, 65.5], [157.5, 48.6], [163.8, 58.6], [167.6, 63.6], [165.1, 55.2],
[165.1, 62.7], [168.9, 56.6], [162.6, 53.9], [164.5, 63.2], [176.5, 73.6],
[168.9, 62.0], [175.3, 63.6], [159.4, 53.2], [160.0, 53.4], [170.2, 55.0],
[162.6, 70.5], [167.6, 54.5], [162.6, 54.5], [160.7, 55.9], [160.0, 59.0],
[157.5, 63.6], [162.6, 54.5], [152.4, 47.3], [170.2, 67.7], [165.1, 80.9],
[172.7, 70.5], [165.1, 60.9], [170.2, 63.6], [170.2, 54.5], [170.2, 59.1],
[161.3, 70.5], [167.6, 52.7], [167.6, 62.7], [165.1, 86.3], [162.6, 66.4],
[152.4, 67.3], [168.9, 63.0], [170.2, 73.6], [175.2, 62.3], [175.2, 57.7],
[160.0, 55.4], [165.1, 104.1], [174.0, 55.5], [170.2, 77.3], [160.0, 80.5],
[167.6, 64.5], [167.6, 72.3], [167.6, 61.4], [154.9, 58.2], [162.6, 81.8],
[175.3, 63.6], [171.4, 53.4], [157.5, 54.5], [165.1, 53.6], [160.0, 60.0],
[174.0, 73.6], [162.6, 61.4], [174.0, 55.5], [162.6, 63.6], [161.3, 60.9],
[156.2, 60.0], [149.9, 46.8], [169.5, 57.3], [160.0, 64.1], [175.3, 63.6],
[169.5, 67.3], [160.0, 75.5], [172.7, 68.2], [162.6, 61.4], [157.5, 76.8],
[176.5, 71.8], [164.4, 55.5], [160.7, 48.6], [174.0, 66.4], [163.8, 67.3]
],
markPoint : {
data : [
{type : 'max', name: '最大值'},
{type : 'min', name: '最小值'}
]
},
markLine : {
data : [
{type : 'average', name: '平均值'}
]
}
},
{
name:'男性',
type:'scatter',
data: [[174.0, 65.6], [175.3, 71.8], [193.5, 80.7], [186.5, 72.6], [187.2, 78.8],
[181.5, 74.8], [184.0, 86.4], [184.5, 78.4], [175.0, 62.0], [184.0, 81.6],
[180.0, 76.6], [177.8, 83.6], [192.0, 90.0], [176.0, 74.6], [174.0, 71.0],
[184.0, 79.6], [192.7, 93.8], [171.5, 70.0], [173.0, 72.4], [176.0, 85.9],
[176.0, 78.8], [180.5, 77.8], [172.7, 66.2], [176.0, 86.4], [173.5, 81.8],
[178.0, 89.6], [180.3, 82.8], [180.3, 76.4], [164.5, 63.2], [173.0, 60.9],
[183.5, 74.8], [175.5, 70.0], [188.0, 72.4], [189.2, 84.1], [172.8, 69.1],
[170.0, 59.5], [182.0, 67.2], [170.0, 61.3], [177.8, 68.6], [184.2, 80.1],
[186.7, 87.8], [171.4, 84.7], [172.7, 73.4], [175.3, 72.1], [180.3, 82.6],
[182.9, 88.7], [188.0, 84.1], [177.2, 94.1], [172.1, 74.9], [167.0, 59.1],
[169.5, 75.6], [174.0, 86.2], [172.7, 75.3], [182.2, 87.1], [164.1, 55.2],
[163.0, 57.0], [171.5, 61.4], [184.2, 76.8], [174.0, 86.8], [174.0, 72.2],
[177.0, 71.6], [186.0, 84.8], [167.0, 68.2], [171.8, 66.1], [182.0, 72.0],
[167.0, 64.6], [177.8, 74.8], [164.5, 70.0], [192.0, 101.6], [175.5, 63.2],
[171.2, 79.1], [181.6, 78.9], [167.4, 67.7], [181.1, 66.0], [177.0, 68.2],
[174.5, 63.9], [177.5, 72.0], [170.5, 56.8], [182.4, 74.5], [197.1, 90.9],
[180.1, 93.0], [175.5, 80.9], [180.6, 72.7], [184.4, 68.0], [175.5, 70.9],
[180.6, 72.5], [177.0, 72.5], [177.1, 83.4], [181.6, 75.5], [176.5, 73.0],
[175.0, 70.2], [174.0, 73.4], [165.1, 70.5], [177.0, 68.9], [192.0, 102.3],
[176.5, 68.4], [169.4, 65.9], [182.1, 75.7], [179.8, 84.5], [175.3, 87.7],
[184.9, 86.4], [177.3, 73.2], [167.4, 53.9], [178.1, 72.0], [168.9, 55.5],
[157.2, 58.4], [180.3, 83.2], [170.2, 72.7], [177.8, 64.1], [172.7, 72.3],
[165.1, 65.0], [186.7, 86.4], [165.1, 65.0], [174.0, 88.6], [175.3, 84.1],
[185.4, 66.8], [177.8, 75.5], [180.3, 93.2], [180.3, 82.7], [177.8, 58.0],
[177.8, 79.5], [177.8, 78.6], [177.8, 71.8], [177.8, 116.4], [163.8, 72.2],
[188.0, 83.6], [198.1, 85.5], [175.3, 90.9], [166.4, 85.9], [190.5, 89.1],
[166.4, 75.0], [177.8, 77.7], [179.7, 86.4], [172.7, 90.9], [190.5, 73.6],
[185.4, 76.4], [168.9, 69.1], [167.6, 84.5], [175.3, 64.5], [170.2, 69.1],
[190.5, 108.6], [177.8, 86.4], [190.5, 80.9], [177.8, 87.7], [184.2, 94.5],
[176.5, 80.2], [177.8, 72.0], [180.3, 71.4], [171.4, 72.7], [172.7, 84.1],
[172.7, 76.8], [177.8, 63.6], [177.8, 80.9], [182.9, 80.9], [170.2, 85.5],
[167.6, 68.6], [175.3, 67.7], [165.1, 66.4], [185.4, 102.3], [181.6, 70.5],
[172.7, 95.9], [190.5, 84.1], [179.1, 87.3], [175.3, 71.8], [170.2, 65.9],
[193.0, 95.9], [171.4, 91.4], [177.8, 81.8], [177.8, 96.8], [167.6, 69.1],
[167.6, 82.7], [180.3, 75.5], [182.9, 79.5], [176.5, 73.6], [186.7, 91.8],
[188.0, 84.1], [188.0, 85.9], [177.8, 81.8], [174.0, 82.5], [177.8, 80.5],
[171.4, 70.0], [185.4, 81.8], [185.4, 84.1], [188.0, 90.5], [188.0, 91.4],
[182.9, 89.1], [176.5, 85.0], [175.3, 69.1], [175.3, 73.6], [188.0, 80.5],
[188.0, 82.7], [175.3, 86.4], [170.5, 67.7], [179.1, 92.7], [177.8, 93.6],
[175.3, 70.9], [182.9, 75.0], [170.8, 93.2], [188.0, 93.2], [180.3, 77.7],
[177.8, 61.4], [185.4, 94.1], [168.9, 75.0], [185.4, 83.6], [180.3, 85.5],
[174.0, 73.9], [167.6, 66.8], [182.9, 87.3], [160.0, 72.3], [180.3, 88.6],
[167.6, 75.5], [186.7, 101.4], [175.3, 91.1], [175.3, 67.3], [175.9, 77.7],
[175.3, 81.8], [179.1, 75.5], [181.6, 84.5], [177.8, 76.6], [182.9, 85.0],
[177.8, 102.5], [184.2, 77.3], [179.1, 71.8], [176.5, 87.9], [188.0, 94.3],
[174.0, 70.9], [167.6, 64.5], [170.2, 77.3], [167.6, 72.3], [188.0, 87.3],
[174.0, 80.0], [176.5, 82.3], [180.3, 73.6], [167.6, 74.1], [188.0, 85.9],
[180.3, 73.2], [167.6, 76.3], [183.0, 65.9], [183.0, 90.9], [179.1, 89.1],
[170.2, 62.3], [177.8, 82.7], [179.1, 79.1], [190.5, 98.2], [177.8, 84.1],
[180.3, 83.2], [180.3, 83.2]
],
markPoint : {
data : [
{type : 'max', name: '最大值'},
{type : 'min', name: '最小值'}
]
},
markLine : {
data : [
{type : 'average', name: '平均值'}
]
}
}
]
}]
};
================================================
FILE: app/assets/javascripts/echarts/theme/tool/thumb.html
================================================
================================================
FILE: app/assets/javascripts/echarts/theme/tool/thumb.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
const glob = require('glob');
const puppeteer = require('puppeteer');
const fs = require('fs');
const path = require('path');
async function wait(time) {
return new Promise(resolve => {
setTimeout(resolve, time);
});
}
async function snapshot(browser, themePath) {
let themeName = path.basename(themePath, '.js');
let code = fs.readFileSync(themePath, 'utf-8');
let page = await browser.newPage();
await page.evaluateOnNewDocument(code);
await page.setViewport({ width: 1200, height: 1200 });
try {
await page.goto('http://localhost/echarts/theme/tool/thumb.html#' + themeName);
await wait(200);
await page.screenshot({ path: __dirname + '/../thumb/' + themeName + '.png' });
}
catch (e) {
console.log(e);
}
await page.close();
console.log('Updated ' + themeName);
}
glob('../*.js', async function (err, themePathList) {
let browser = await puppeteer.launch();
for (let themePath of themePathList) {
try {
await snapshot(browser, themePath);
}
catch(e) {
console.log(e);
}
}
await browser.close();
});
================================================
FILE: app/assets/javascripts/echarts/theme/v5.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#5470c6',
'#91cc75',
'#fac858',
'#ee6666',
'#73c0de',
'#3ba272',
'#fc8452',
'#9a60b4',
'#ea7ccc'
];
var axisCommon = function() {
return {
axisLine: {
lineStyle: {
color: '#6E7079'
}
},
axisLabel: {
color: null
},
splitLine: {
lineStyle: {
color: ['#E0E6F1']
}
},
splitArea: {
areaStyle: {
color: ['rgba(250,250,250,0.2)', 'rgba(210,219,238,0.2)']
}
},
minorSplitLine: {
color: '#F4F7FD'
}
};
};
var gradientColor = ['#f6efa6', '#d88273', '#bf444c'];
echarts.registerTheme('v5', {
color: colorPalette,
gradientColor: gradientColor,
loading: {
textColor: 'red'
},
// Series
bar: {
defaultBarGap: '20%',
select: {
itemStyle: {
borderColor: '#212121',
borderWidth: 1
}
}
},
boxplot: {
emphasis: {
itemStyle: {
shadowColor: 'rgba(0,0,0,0.2)'
}
}
},
funnel: {
bottom: 60,
select: {
itemStyle: {
borderColor: '#212121',
borderWidth: 1
}
},
label: {
color: 'inherit'
}
},
gauge: {
axisLine: {
lineStyle: {
color: [[1, '#E6EBF8']]
}
},
splitLine: {
lineStyle: {
color: '#63677A'
}
},
axisTick: {
lineStyle: {
color: '#63677A'
}
},
axisLabel: {
color: '#464646'
},
anchor: {
itemStyle: {
color: '#fff',
borderColor: '#5470c6'
}
},
title: {
color: '#464646',
},
detail: {
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
color: '#464646'
}
},
graph: {
lineStyle: {
color: '#aaa'
},
select: {
itemStyle: {
borderColor: '#212121'
}
}
},
heatmap: {
select: {
itemStyle: {
borderColor: '#212121'
}
}
},
line: {
symbolSize: 4
},
pictorialBar: {
select: {
itemStyle: {
borderColor: '#212121',
borderWidth: 1
}
}
},
pie: {
radius: [0, '75%'],
labelLine: {
length2: 15
}
},
map: {
defaultItemStyleColor: '#eee',
label: {
color: '#000'
},
itemStyle: {
borderColor: '#444',
areaColor: '#eee'
},
emphasis: {
label: {
color: 'rgb(100,0,0)'
},
itemStyle: {
areaColor: 'rgba(255,215,0,0.8)'
}
},
select: {
label: {
color: 'rgb(100,0,0)'
},
itemStyle: {
color: 'rgba(255,215,0,0.8)'
}
},
},
sankey: {
lineStyle: {
color: '#314656'
},
select: {
itemStyle: {
borderColor: '#212121'
}
},
},
scatter: {
select: {
itemStyle: {
borderColor: '#212121'
}
}
},
tree: {
lineStyle: {
color: '#ccc'
}
},
treemap: {
left: 'center',
top: 'middle',
width: '80%',
height: '80%',
scaleLimit: {
max: null,
min: null
},
breadcrumb: {
top: 'bottom',
bottom: null,
itemStyle: {
color: 'rgba(0,0,0,0.7)', // '#5793f3',
textStyle: {
color: '#fff'
}
},
emphasis: {
itemStyle: {
color: 'rgba(0,0,0,0.9)' // '#5793f3',
}
}
}
},
// Components
timeAxis: axisCommon(),
logAxis: axisCommon(),
valueAxis: axisCommon(),
categoryAxis: (() => {
const axis = axisCommon();
axis.axisTick = {
show: true
};
return axis;
})(),
axisPointer: {
lineStyle: {
color: '#B9BEC9'
},
shadowStyle: {
color: 'rgba(210,219,238,0.2)'
},
label: {
backgroundColor: 'auto',
color: '#fff'
},
handle: {
color: '#333',
shadowBlur: 3,
shadowColor: '#aaa',
shadowOffsetX: 0,
shadowOffsetY: 2,
}
},
brush: {
brushStyle: {
color: 'rgba(210,219,238,0.3)',
borderColor: '#D2DBEE'
},
defaultOutOfBrushColor: '#ddd'
},
calendar: {
splitLine: {
lineStyle: {
color: '#000'
}
},
itemStyle: {
borderColor: '#ccc'
},
dayLabel: {
margin: '50%',
color: '#000'
},
monthLabel: {
margin: 5,
color: '#000'
},
yearLabel: {
margin: 30,
color: '#ccc'
}
},
dataZoom: {
borderColor: '#d2dbee',
borderRadius: 3,
backgroundColor: 'rgba(47,69,84,0)',
dataBackground: {
lineStyle: {
color: '#d2dbee',
width: 0.5
},
areaStyle: {
color: '#d2dbee',
opacity: 0.2
}
},
selectedDataBackground: {
lineStyle: {
color: '#8fb0f7',
width: 0.5
},
areaStyle: {
color: '#8fb0f7',
opacity: 0.2
}
},
handleStyle: {
color: '#fff',
borderColor: '#ACB8D1'
},
moveHandleStyle: {
color: '#D2DBEE',
opacity: 0.7
},
textStyle: {
color: '#6E7079'
},
brushStyle: {
color: 'rgba(135,175,274,0.15)'
},
emphasis: {
handleStyle: {
borderColor: '#8FB0F7'
},
moveHandleStyle: {
color: '#8FB0F7',
opacity: 0.7
}
},
defaultLocationEdgeGap: 7
},
geo: {
defaultItemStyleColor: '#eee',
label: {
color: '#000'
},
itemStyle: {
borderColor: '#444'
},
emphasis: {
label: {
color: 'rgb(100,0,0)'
},
itemStyle: {
color: 'rgba(255,215,0,0.8)'
}
},
select: {
label: {
color: 'rgb(100,0,0)'
},
itemStyle: {
color: 'rgba(255,215,0,0.8)'
}
}
},
grid: {
left: '10%',
top: 60,
bottom: 70,
borderColor: '#ccc'
},
legend: {
top: 0,
bottom: null,
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
itemGap: 10,
inactiveColor: '#ccc',
inactiveBorderColor: '#ccc',
lineStyle: {
inactiveColor: '#ccc',
},
textStyle: {
color: '#333'
},
selectorLabel: {
color: '#666',
borderColor: '#666'
},
emphasis: {
selectorLabel: {
color: '#eee',
backgroundColor: '#666'
}
},
pageIconColor: '#2f4554',
pageIconInactiveColor: '#aaa',
pageTextStyle: {
color: '#333'
}
},
radar: (() => {
const radar = axisCommon();
radar.radius = '75%';
radar.axisName = {
color: '#bbb'
};
radar.axisLine.lineStyle.color = '#bbb';
return radar;
})(),
timeline: {
padding: 5,
borderColor: '#ccc',
lineStyle: {
color: '#DAE1F5'
},
label: {
color: '#A4B1D7'
},
itemStyle: {
color: '#A4B1D7',
borderWidth: 1
},
checkpointStyle: {
color: '#316bf3',
borderColor: '#fff',
borderWidth: 2,
shadowBlur: 2,
shadowOffsetX: 1,
shadowOffsetY: 1,
shadowColor: 'rgba(0, 0, 0, 0.3)',
},
controlStyle: {
playIcon: 'path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z', // jshint ignore:line
stopIcon: 'path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z', // jshint ignore:line
// eslint-disable-next-line max-len
nextIcon: 'M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z', // jshint ignore:line
// eslint-disable-next-line max-len
prevIcon: 'M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z', // jshint ignore:line
color: '#A4B1D7',
borderColor: '#A4B1D7',
borderWidth: 1
},
emphasis: {
label: {
color: '#6f778d'
},
itemStyle: {
color: '#316BF3'
},
controlStyle: {
color: '#316BF3',
borderColor: '#316BF3',
borderWidth: 2
}
},
progress: {
lineStyle: {
color: '#316BF3'
},
itemStyle: {
color: '#316BF3'
},
label: {
color: '#6f778d'
}
},
},
title: {
left: 0,
top: 0,
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
textStyle: {
color: '#464646'
},
subtextStyle: {
color: '#6E7079'
}
},
toolbox: {
borderColor: '#ccc',
padding: 5,
itemGap: 8,
iconStyle: {
borderColor: '#666',
},
emphasis: {
iconStyle: {
borderColor: '#3E98C5'
}
}
},
tooltip: {
axisPointer: {
crossStyle: {
color: '#999'
}
},
textStyle: {
color: '#666'
},
backgroundColor: '#fff',
borderWidth: 1,
defaultBorderColor: '#fff'
},
visualMap: {
color: [gradientColor[2], gradientColor[1], gradientColor[0]],
inactive: ['rgba(0,0,0,0)'],
indicatorStyle: {
shadowColor: 'rgba(0,0,0,0.2)'
},
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
contentColor: '#5793f3',
inactiveColor: '#aaa',
padding: 5,
textStyle: {
color: '#333'
}
}
});
});
================================================
FILE: app/assets/javascripts/echarts/theme/vintage.js
================================================
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function(root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (
typeof exports === 'object' &&
typeof exports.nodeName !== 'string'
) {
// CommonJS
factory(exports, require('echarts/lib/echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
})(this, function(exports, echarts) {
var log = function(msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#d87c7c',
'#919e8b',
'#d7ab82',
'#6e7074',
'#61a0a8',
'#efa18d',
'#787464',
'#cc7e63',
'#724e58',
'#4b565b'
];
echarts.registerTheme('vintage', {
color: colorPalette,
backgroundColor: '#fef8ef',
graph: {
color: colorPalette
}
});
});
================================================
FILE: app/assets/javascripts/echarts.themeloader.js
================================================
(function() {
window.RailsCharts = window.RailsCharts || {};
window.RailsCharts.loadedThemes = window.RailsCharts.loadedThemes || [];
window.RailsCharts.loadTheme = function(themeName) {
document.addEventListener('DOMContentLoaded', () => {
if (typeof echarts === 'undefined') {
console.error('ECharts is not loaded. Please ensure echarts.js is included.');
return;
}
if (window.RailsCharts.loadedThemes.includes(themeName)) {
console.warn(`Theme '${themeName}' is already loaded.`);
return;
}
const script = document.createElement('script');
script.type = 'text/javascript';
script.src = `/assets/echarts/theme/${themeName}.js`;
script.onload = () => {
console.log(`Theme '${themeName}' loaded successfully.`);
};
script.onerror = () => {
console.error(`Failed to load theme: /assets/echarts/theme/${themeName}.js`);
};
document.head.appendChild(script);
});
};
})();
================================================
FILE: bin/test
================================================
#!/usr/bin/env ruby
$: << File.expand_path("../test", __dir__)
require "bundler/setup"
require "rails/plugin/test"
================================================
FILE: lib/install/with_importmap.rb
================================================
say "Import ECharts"
append_to_file "app/javascript/application.js", <<~JS
import "echarts"
import "echarts/theme/dark"
JS
say "Pin ECharts"
append_to_file "config/importmap.rb", <<~RUBY
pin "echarts", to: "echarts.min.js"
pin "echarts/theme/dark", to: "echarts/theme/dark.js"
RUBY
================================================
FILE: lib/install/with_node.rb
================================================
js_code = <<~JS
import * as echarts from "echarts";
import "echarts/theme/dark";
window.echarts = echarts;
JS
if Rails.root.join("app/javascript/application.js").exist?
say "Import ECharts"
append_to_file "app/javascript/application.js", js_code
elsif Rails.root.join("app/javascript/packs/application.js").exist?
say "Import ECharts"
append_to_file "app/javascript/packs/application.js", js_code
else
say "You must import add these lines in your JavaScript entrypoint file", :red
say js_code
end
say "Install ECharts"
run "yarn add echarts"
================================================
FILE: lib/install/with_sprockets.rb
================================================
js_code = <<~JS
//= require echarts.min.js
//= require echarts/theme/vintage.js
JS
if Rails.root.join("app/assets/javascripts/application.js").exist?
say "Import ECharts"
append_to_file "app/assets/javascripts/application.js", js_code
else
say "You must import add these lines in your JavaScript entrypoint file", :red
say js_code
end
================================================
FILE: lib/rails_charts/area_chart.rb
================================================
module RailsCharts
class AreaChart < LineChart
def defaults
{
tooltip: {
trigger: 'axis'
},
xAxis: {
boundaryGap: false
},
series: {
areaStyle: {},
stack: 'Total'
},
toolbox: {
feature: {
saveAsImage: {}
},
}
}
end
def x_axis
{
type: 'category'
}
end
end
end
================================================
FILE: lib/rails_charts/bar_chart.rb
================================================
module RailsCharts
class BarChart < LineChart
def type
'bar'
end
def defaults
{
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
toolbox: {
feature: {
saveAsImage: {}
},
}
}
end
end
end
================================================
FILE: lib/rails_charts/base_chart.rb
================================================
module RailsCharts
class BaseChart
CHART_JS_PATTERN = /"RAILS_CHART_JS:((?!RAILS_CHART_JS:).*?):RAILS_CHART_JS_END"/
using RubyExt
attr_reader :data, :options, :chart_id, :container_id, :defaults
attr_reader :width, :height, :style, :klass, :theme, :locale, :renderer
attr_reader :other_options, :debug
attr_reader :vertical
def initialize(data, options = {})
@data = data
@options = options
@other_options = options.delete(:options).presence || {}
@defaults = RailsCharts.defaults[self.class].presence || {}
@chart_id = "rails_charts_#{Digest::SHA1.hexdigest([Time.now, rand].join)}"
@container_id = options.delete(:id).presence || @chart_id
@width = options.delete(:width).presence || RailsCharts.options[:width]
@height = options.delete(:height).presence || RailsCharts.options[:height]
@theme = options.delete(:theme).presence || RailsCharts.options[:theme]
@locale = options.delete(:locale).presence || RailsCharts.options[:locale]
@renderer = options.delete(:renderer).presence || RailsCharts.options[:renderer] || "canvas"
@klass = options.delete(:class).presence || RailsCharts.options[:class]
@style = options.delete(:style).presence || RailsCharts.options[:style]
@debug = options.delete(:debug)
@vertical = options.delete(:vertical).presence
end
def js_code
style_css = []
style_css << "width: #{width}" if width
style_css << "height: #{height}" if height
style_css << style
%Q{
}
end
def option
str = build_options.to_json
str.gsub!(CHART_JS_PATTERN) { Base64.decode64($1).force_encoding(Encoding::UTF_8) }
str
end
def build_options
hash = {}
hash[:series] = Array.wrap(generate_series_options)
hash = hash.complex_merge(axises)
hash = hash.complex_merge(defaults)
hash = hash.complex_merge(other_options)
hash
end
def axises
if self.vertical
{
xAxis: y_axis,
yAxis: x_axis,
}
else
{
xAxis: x_axis,
yAxis: y_axis,
}
end
end
def x_axis
[]
end
def y_axis
[]
end
end
end
================================================
FILE: lib/rails_charts/calendar_chart.rb
================================================
module RailsCharts
class CalendarChart < BaseChart
attr_reader :visual_map_options
def initialize(data, options = {})
super(data, options)
end
def type
'heatmap'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
{
type: type,
coordinateSystem: 'calendar',
data: data[:data]
}
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
}
end
end
end
================================================
FILE: lib/rails_charts/candlestick_chart.rb
================================================
module RailsCharts
class CandlestickChart < LineChart
def type
'candlestick'
end
def defaults
{
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross'
}
},
toolbox: {
feature: {
saveAsImage: {}
},
}
}
end
end
end
================================================
FILE: lib/rails_charts/custom_chart.rb
================================================
module RailsCharts
class CustomChart < BaseChart
def initialize(data, options = {})
super([], options)
@options = options
end
def build_options
options
end
end
end
================================================
FILE: lib/rails_charts/donut_chart.rb
================================================
module RailsCharts
class DonutChart < PieChart
def initialize(data, options = {})
super(data, options)
end
def generate_series_options
{
data: data.map{|k, v| {name: k, value: v} },
type: type
}
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
series: {
radius: ['40%', '70%']
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
end
end
end
================================================
FILE: lib/rails_charts/engine.rb
================================================
module RailsCharts
class Engine < ::Rails::Engine
initializer "rails_charts.importmap", before: "importmap" do |app|
if defined?(Importmap)
app.config.importmap.cache_sweepers << root.join("app/assets/javascripts")
end
end
# If you don't want to precompile Echarts's assets (eg. because you're using webpack),
# you can do this in an intiailzer:
#
# config.after_initialize do
# config.assets.precompile -= RailsCharts::Engine::PRECOMPILE_ASSETS
# end
PRECOMPILE_ASSETS = Dir[root.join("app/assets/javascripts/**/*")]
initializer 'rails_charts.assets' do |app|
if app.config.respond_to?(:assets)
app.config.assets.precompile += PRECOMPILE_ASSETS
end
end
initializer 'rails_charts.helpers', before: :load_config_initializers do
ActiveSupport.on_load :action_view do
include RailsCharts::Helpers
end
end
end
end
================================================
FILE: lib/rails_charts/funnel_chart.rb
================================================
module RailsCharts
class FunnelChart < BaseChart
def type
'funnel'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
{
data: data[:data],
type: type,
}
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
}
end
end
end
================================================
FILE: lib/rails_charts/gauge_chart.rb
================================================
module RailsCharts
class GaugeChart < BaseChart
def type
'gauge'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
{
data: Array.wrap(data[:data]),
type: type,
}
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
}
end
end
end
================================================
FILE: lib/rails_charts/helpers.rb
================================================
require "json"
require "erb"
module RailsCharts
module Helpers
def line_chart(data, options = {})
generate_rails_chart LineChart, data, options
end
def bar_chart(data, options = {})
generate_rails_chart BarChart, data, options
end
def stacked_bar_chart(data, options = {})
generate_rails_chart StackedBarChart, data, options
end
def pie_chart(data, options = {})
generate_rails_chart PieChart, data, options
end
def scatter_chart(data, options = {})
generate_rails_chart ScatterChart, data, options
end
def parallel_chart(data, options = {})
generate_rails_chart ParallelChart, data, options
end
def donut_chart(data, options = {})
generate_rails_chart DonutChart, data, options
end
def sankey_chart(data, options = {})
generate_rails_chart SankeyChart, data, options
end
def area_chart(data, options = {})
generate_rails_chart AreaChart, data, options
end
def radar_chart(data, options = {})
generate_rails_chart RadarChart, data, options
end
def calendar_chart(data, options = {})
generate_rails_chart CalendarChart, data, options
end
def funnel_chart(data, options = {})
generate_rails_chart FunnelChart, data, options
end
def gauge_chart(data, options = {})
generate_rails_chart GaugeChart, data, options
end
def candlestick_chart(data, options = {})
generate_rails_chart CandlestickChart, data, options
end
def custom_chart(options = {})
generate_rails_chart CustomChart, [], options
end
def generate_rails_chart(klass, data, options = {})
klass = klass.new(data, options)
if options[:code]
tag.textarea(row: 20, cols: 80, style: 'width: 100%; height: 300px') do
klass.js_code
end
else
# tag.pre(debug(data.inspect)) +
# tag.textarea(row: 20, cols: 80, style: 'width: 100%; height: 300px') do
# klass.js_code
# end +
raw(klass.js_code)
end
end
end
end
================================================
FILE: lib/rails_charts/javascript.rb
================================================
module RailsCharts
class Javascript
attr_reader :code
def initialize(code)
@code = code
end
def as_json(options = nil)
"RAILS_CHART_JS:#{Base64.strict_encode64(code)}:RAILS_CHART_JS_END"
end
end
end
================================================
FILE: lib/rails_charts/line_chart.rb
================================================
module RailsCharts
class LineChart < BaseChart
def initialize(data, options = {})
super(Array.wrap(data.to_a), options)
end
def type
'line'
end
def x
case data[0]
when Array
data.map{|e| e[0]}
when Hash
data.map{|e| e[:data].keys}.flatten
else
nil
end&.uniq
end
def y
case data[0]
when Array
data.map{|e| e[1]}
when Hash
data.map{|e| e[:name]}
end
end
def generate_series_options
# binding.pry if debug
case data[0]
when Array
{
data: is_a?(AreaChart) || is_a?(ScatterChart) ? data : data.map(&:last),
type: type,
}
when Hash
data.map do |e|
{
data: e[:data].is_a?(Hash) ? e[:data].values : e[:data],
type: type,
name: e[:name]
}
end
end
end
def x_axis
{
type: 'category',
data: x
}
end
def y_axis
{
type: 'value',
}
end
def defaults
{
tooltip: {
trigger: 'axis'
},
toolbox: {
feature: {
saveAsImage: {}
},
}
}
end
end
end
================================================
FILE: lib/rails_charts/parallel_chart.rb
================================================
module RailsCharts
class ParallelChart < BaseChart
def type
'parallel'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
{
data: data,
type: type
}
end
def defaults
{
series: {
lineStyle: {
width: 2
}
}
}
end
end
end
================================================
FILE: lib/rails_charts/pie_chart.rb
================================================
module RailsCharts
class PieChart < LineChart
def type
'pie'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
if data[0].is_a?(Hash)
{
data: data,
type: type
}
else
{
data: data.map{|k, v| {name: k, value: v} },
type: type
}
end
end
def x_axis
[]
end
def y_axis
[]
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
series: {
radius: '70%',
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
end
end
end
================================================
FILE: lib/rails_charts/radar_chart.rb
================================================
module RailsCharts
class RadarChart < BaseChart
def type
'radar'
end
def build_options
super.except(:xAxis, :yAxis).merge(radar)
end
def radar
{
radar: {
indicator: data[:indicators].map { |(k, v)| { name: k, max: v } }
}
}
end
def generate_series_options
{
type: type,
data: data[:data]
}
end
def defaults
{
tooltip: {
item: {
trigger: 'item',
},
},
}
end
end
end
================================================
FILE: lib/rails_charts/ruby_ext.rb
================================================
module RailsCharts
module RubyExt
refine ::Array do
def deep_merge(other)
map{|e| e.merge!(other) }
end
end
refine ::Hash do
def complex_merge(other)
self.each do |k, v|
next unless default = other[k]
if v.is_a?(Array) || v.is_a?(Hash)
self[k] = v.deep_merge(default)
else
self[k] = default
end
end
self.deep_merge!(other.except(*self.keys))
self
end
end
end
end
================================================
FILE: lib/rails_charts/sankey_chart.rb
================================================
module RailsCharts
class SankeyChart < BaseChart
def type
'sankey'
end
def build_options
super.except(:xAxis, :yAxis)
end
def generate_series_options
{
data: data[:data],
links: data[:links],
type: type
}
end
def defaults
{
series: {
emphasis: {
focus: 'adjacency'
}
}
}
end
end
end
================================================
FILE: lib/rails_charts/scatter_chart.rb
================================================
module RailsCharts
class ScatterChart < LineChart
def type
'scatter'
end
# def generate_series_options
# {
# data: data,
# type: type,
# }
# end
def defaults
{
xAxis: {},
yAxis: {},
tooltip: {
formatter: '{c}'
},
}
end
def x_axis
{}
end
def y_axis
{}
end
end
end
================================================
FILE: lib/rails_charts/stacked_bar_chart.rb
================================================
module RailsCharts
class StackedBarChart < BarChart
def defaults
super.deep_merge({
series: {
stack: 'stack',
},
})
end
end
end
================================================
FILE: lib/rails_charts/version.rb
================================================
module RailsCharts
VERSION = "1.0.0"
end
================================================
FILE: lib/rails_charts.rb
================================================
require "rails_charts/version"
require "rails_charts/ruby_ext"
require "rails_charts/javascript"
require "rails_charts/engine"
require "rails_charts/base_chart"
require "rails_charts/line_chart"
require "rails_charts/bar_chart"
require "rails_charts/stacked_bar_chart"
require "rails_charts/pie_chart"
require "rails_charts/donut_chart"
require "rails_charts/area_chart"
require "rails_charts/radar_chart"
require "rails_charts/calendar_chart"
require "rails_charts/funnel_chart"
require "rails_charts/gauge_chart"
require "rails_charts/scatter_chart"
require "rails_charts/parallel_chart"
require "rails_charts/sankey_chart"
require "rails_charts/candlestick_chart"
require "rails_charts/custom_chart"
require "rails_charts/helpers"
module RailsCharts
using RubyExt
class << self
attr_accessor :options, :defaults
def js(code)
RailsCharts::Javascript.new code
end
end
self.options = {
theme: nil,
width: "100%",
height: "450px",
css_klass: "rails_charts",
style: nil
}
self.defaults = {
# RailsCharts::DonutChart => {
# ...
# }
}
end
================================================
FILE: lib/tasks/rails_charts_tasks.rake
================================================
def run_rails_charts_install_template(path)
system "#{RbConfig.ruby} ./bin/rails app:template LOCATION=#{File.expand_path("../install/#{path}.rb", __dir__)}"
end
namespace :rails_charts do
desc "Install Rails Charts into the app"
task :install do
if Rails.root.join("config/importmap.rb").exist?
Rake::Task["rails_charts:install:importmap"].invoke
elsif Rails.root.join("package.json").exist?
Rake::Task["rails_charts:install:node"].invoke
elsif defined?(Sprockets)
Rake::Task["rails_charts:install:sprockets"].invoke
else
puts "Unable to install ECharts with current configuration"
end
end
namespace :install do
desc "Install Rails Charts into the app with asset pipeline"
task :importmap do
run_rails_charts_install_template "with_importmap"
end
desc "Install Rails Charts into the app with webpacker/esbuild"
task :node do
run_rails_charts_install_template "with_node"
end
desc "Install Rails Charts into the app with sprockets"
task :sprockets do
run_rails_charts_install_template "with_sprockets"
end
end
end
================================================
FILE: rails_charts.gemspec
================================================
require_relative "lib/rails_charts/version"
Gem::Specification.new do |spec|
spec.name = "rails_charts"
spec.version = RailsCharts::VERSION
spec.authors = ["Igor Kasyanchuk", "Liubomyr Manastyretskyi"]
spec.email = ["igorkasyanchuk@gmail.com", "manastyretskyi@gmail.com"]
spec.homepage = "https://github.com/railsjazz/rails_charts"
spec.summary = "One more solution to create charts in Ruby on Rails application"
spec.description = "One more solution to create charts in Ruby on Rails application"
spec.license = "MIT"
spec.metadata["homepage_uri"] = spec.homepage
spec.files = Dir.chdir(File.expand_path(__dir__)) do
Dir["{app,config,db,lib,vendor}/**/*", "MIT-LICENSE", "Rakefile", "README.md"]
end
spec.add_dependency "rails"
spec.add_development_dependency "faker"
spec.add_development_dependency "pry"
spec.add_development_dependency "groupdate"
spec.add_development_dependency "puma"
spec.add_development_dependency "sprockets-rails"
spec.add_development_dependency "rspec-rails"
spec.add_development_dependency "simplecov"
end
================================================
FILE: spec/charts/area_chart_spec.rb
================================================
require_relative "../rails_helper"
describe RailsCharts::AreaChart do
before do
User.create(age: 10, role: 'admin', salary: 100)
User.create(age: 20, role: 'moderator', salary: 20)
end
describe "#area_chart 1" do
it "build_options" do
chart = RailsCharts::AreaChart.new({10 => 42, 20 => 4242})
expect(chart.build_options).to eq({
:series=>[
{:areaStyle=>{}, :data=>[[10,42], [20,4242]], :stack=>"Total", :type=>"line"}
],
:tooltip=>{:trigger=>"axis"},
:toolbox => {:feature=>{:saveAsImage=>{}}},
:xAxis=>{:type=>"category", :boundaryGap=>false},
:yAxis=>{:type=>"value"}
})
end
end
describe "#area_chart 2" do
it "for time" do
DataPoint.create(event_date: Date.yesterday, value: 1)
DataPoint.create(event_date: Date.current, value: 2)
DataPoint.create(event_date: Date.tomorrow, value: 3)
chart = RailsCharts::AreaChart.new(DataPoint.pluck(:event_date, :value), {
options: {
xAxis: {
type: 'time'
},
series: {
type: 'time'
}
}
})
expect(chart.build_options).to eq({
:series=>[
{:areaStyle=>{}, :data=>[[Date.yesterday, 1], [Date.current, 2], [Date.tomorrow, 3]], :stack=>"Total", :type=>"time"}
],
:tooltip=>{:trigger=>"axis"},
:toolbox => {:feature=>{:saveAsImage=>{}}},
:xAxis=>{:type=>"time", :boundaryGap=>false},
:yAxis=>{:type=>"value"}
})
end
end
end
================================================
FILE: spec/charts/line_chart_spec.rb
================================================
require_relative "../rails_helper"
describe RailsCharts::LineChart do
before do
User.create(age: 10, role: 'admin', salary: 100, created_at: Date.yesterday)
User.create(age: 11, role: 'admin', salary: 101, created_at: Date.current)
User.create(age: 20, role: 'moderator', salary: 20, created_at: Date.yesterday)
User.create(age: 21, role: 'moderator', salary: 21, created_at: Date.current)
User.create(age: 22, role: 'moderator', salary: 22, created_at: Date.current)
end
describe "#line_chart 1 hash" do
it "build_options" do
data = {10 => 42, 20 => 4242}
chart = RailsCharts::LineChart.new(data, {debug: false, options: { title: { text: "Hello" } }})
expect(chart.build_options).to eq({
:series=>[
{:data=>[42, 4242], :type=>"line"}
],
title: { text: "Hello" },
:toolbox => {:feature=>{:saveAsImage=>{}}},
:tooltip=>{:trigger=>"axis"},
:xAxis=>{data: [10, 20], :type=>"category"},
:yAxis=>{:type=>"value"}
})
end
end
describe '#line_chart 2 multi' do
it 'works' do
# [{:name=>"admin", :data=>{Thu, 21 Apr 2022=>1, Fri, 22 Apr 2022=>1}}, {:name=>"moderator", :data=>{Thu, 21 Apr 2022=>1, Fri, 22 Apr 2022=>2}}]
expect(User.count).to eq(5)
data = User.distinct.pluck(:role).map{|e| {name: e, data: User.where(role: e).group_by_day(:created_at).count}}
chart = RailsCharts::LineChart.new(data, { debug: false })
expect(chart.build_options).to eq({
:series=>[
{:data=>[1, 1], :type=>"line", name: 'admin'},
{:data=>[1, 2], :type=>"line", name: 'moderator'}
],
:toolbox=>{:feature=>{:saveAsImage=>{}}},
:tooltip=>{:trigger=>"axis"},
:xAxis=>{
data: [Date.yesterday, Date.current],
type: "category"
},
:yAxis=>{:type=>"value"}
})
end
end
describe "#line_chart with JS formatter" do
it "build_options" do
data = {10 => 42, 20 => 4242}
chart = RailsCharts::LineChart.new(data, {
options: {
tooltip: {
valueFormatter: RailsCharts::Javascript.new("(value) => '$' + value.toFixed(2)")
}
}
})
expect(chart.option).to include(":(value) => '$' + value.toFixed(2)")
end
end
end
================================================
FILE: spec/controllers/home_controller_spec.rb
================================================
require_relative "../rails_helper"
describe HomeController do
render_views
before do
User.create(age: 10, role: 'admin', salary: 100)
User.create(age: 20, role: 'moderator', salary: 20)
User.create(age: 30, role: 'user', salary: 50)
DataPoint.create(value: 50, event_date: Date.yesterday)
DataPoint.create(value: 100, event_date: Date.current)
Account.create(name: 'One', priority: 100)
Account.create(name: 'Two', priority: 200)
end
describe "#index" do
it "works" do
get :index
expect(response).to be_successful
end
end
end
================================================
FILE: spec/helpers/helpers_spec.rb
================================================
require_relative "../rails_helper"
describe RailsCharts::Helpers do
before do
User.create(age: 10, role: 'admin', salary: 100)
User.create(age: 20, role: 'moderator', salary: 20)
User.create(age: 30, role: 'user', salary: 50)
end
describe "#line_chart" do
it "works" do
expect { helper.line_chart(User.group(:age).count, width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
it "works multiline" do
data = User.distinct.pluck(:role).map{|e| {name: e, data: User.where(role: e).group_by_day(:created_at).count} }
expect { helper.line_chart(data, width: '1000px', theme: 'infographic') }.not_to raise_error
end
end
describe "#area_chart" do
it "works" do
expect { helper.area_chart(User.group(:age).count, width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
end
describe "#bar_chart" do
it "works" do
expect { helper.bar_chart(User.group(:age).count, width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
it "works (vertical)" do
expect { helper.bar_chart(User.group(:age).count, vertical: true, style: "margin: 0 auto", width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
end
describe "#pie_chart" do
it "works" do
expect { helper.pie_chart(User.group(:age).count, class: 'some_ui_class', width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
end
describe "donut_chart" do
it "works" do
expect { helper.donut_chart(User.group(:age).count, radius: ['50%', '70%'], width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
end
describe "radar_chart" do
it "works" do
expect { helper.radar_chart(User.get_data_for_radar_chart, width: '1000px', height: '300px', theme: 'vintage') }.not_to raise_error
end
end
describe "calendar_chart" do
it "works" do
expect { helper.calendar_chart(User.get_data_for_radar_chart) }.not_to raise_error
end
end
describe "funnel_chart" do
it "works" do
expect { helper.funnel_chart(User.get_funnel_sample_data) }.not_to raise_error
end
end
describe "gauge_chart" do
it "works" do
expect { helper.funnel_chart(User.get_gauge_sample_data) }.not_to raise_error
end
end
describe "custom_chart" do
it "works" do
options = {
series: [
{
type: 'gauge',
center: ['50%', '60%'],
startAngle: 200,
endAngle: -20,
min: 0,
max: 60,
splitNumber: 12,
itemStyle: {
color: '#FFAB91'
},
progress: {
show: true,
width: 30
},
pointer: {
show: false
},
axisLine: {
lineStyle: {
width: 30
}
},
axisTick: {
distance: -45,
splitNumber: 5,
lineStyle: {
width: 2,
color: '#999'
}
},
splitLine: {
distance: -52,
length: 14,
lineStyle: {
width: 3,
color: '#999'
}
},
axisLabel: {
distance: -20,
color: '#999',
fontSize: 20
},
anchor: {
show: false
},
title: {
show: false
},
detail: {
valueAnimation: true,
width: '60%',
lineHeight: 40,
borderRadius: 8,
offsetCenter: [0, '-15%'],
fontSize: 60,
fontWeight: 'bolder',
formatter: '{value} °C',
color: 'auto'
},
data: [
{
value: 20
}
]
},
{
type: 'gauge',
center: ['50%', '60%'],
startAngle: 200,
endAngle: -20,
min: 0,
max: 60,
itemStyle: {
color: '#FD7347'
},
progress: {
show: true,
width: 8
},
pointer: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
},
splitLine: {
show: false
},
axisLabel: {
show: false
},
detail: {
show: false
},
data: [
{
value: 20
}
]
}
]
}
expect { helper.custom_chart(options)}.not_to raise_error
end
end
end
================================================
FILE: spec/models/simple_spec.rb
================================================
require_relative "../rails_helper"
describe "Charts" do
using RailsCharts::RubyExt
it 'works' do
c = RailsCharts::LineChart.new({Date.yesterday => 100, Date.current => 200, Date.tomorrow => 300})
expect { c.js_code }.not_to raise_error
end
it 'can do nested merge' do
expect([{}, {a: 1}].deep_merge({b: 1})).to eq([{:b=>1}, {:a=>1, :b=>1}])
end
describe "deep merge" do
it 'works' do
conf = {
tooltip: {
show: true
},
series: {
data: {
color: 'red'
}
}
}
options = {
tooltip: {
text: "hello"
},
series: {
name: 'xxxx',
data: {
value: 1
}
}
}
expect(conf.deep_merge(options)).to eq({
tooltip: {
show: true,
text: "hello"
},
series: {
name: 'xxxx',
data: {
color: 'red',
value: 1
}
}
})
end
end
end
================================================
FILE: spec/rails_helper.rb
================================================
# This file is copied to spec/ when you run 'rails generate rspec:install'
require 'spec_helper'
ENV['RAILS_ENV'] ||= 'test'
require 'simplecov'
SimpleCov.start 'rails'
require_relative '../test/dummy/config/environment'
# Prevent database truncation if the environment is production
abort("The Rails environment is running in production mode!") if Rails.env.production?
require 'rspec/rails'
# Add additional requires below this line. Rails is not loaded until this point!
# Requires supporting ruby files with custom matchers and macros, etc, in
# spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
# run as spec files by default. This means that files in spec/support that end
# in _spec.rb will both be required and run as specs, causing the specs to be
# run twice. It is recommended that you do not name files matching this glob to
# end with _spec.rb. You can configure this pattern with the --pattern
# option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
#
# The following line is provided for convenience purposes. It has the downside
# of increasing the boot-up time by auto-requiring all files in the support
# directory. Alternatively, in the individual `*_spec.rb` files, manually
# require only the support files necessary.
#
# Dir[Rails.root.join('spec', 'support', '**', '*.rb')].sort.each { |f| require f }
# Checks for pending migrations and applies them before tests are run.
# If you are not using ActiveRecord, you can remove these lines.
begin
ActiveRecord::Migration.maintain_test_schema!
rescue ActiveRecord::PendingMigrationError => e
puts e.to_s.strip
exit 1
end
RSpec.configure do |config|
# Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
config.fixture_path = "#{::Rails.root}/spec/fixtures"
# If you're not using ActiveRecord, or you'd prefer not to run each of your
# examples within a transaction, remove the following line or assign false
# instead of true.
config.use_transactional_fixtures = true
# You can uncomment this line to turn off ActiveRecord support entirely.
# config.use_active_record = false
# RSpec Rails can automatically mix in different behaviours to your tests
# based on their file location, for example enabling you to call `get` and
# `post` in specs under `spec/controllers`.
#
# You can disable this behaviour by removing the line below, and instead
# explicitly tag your specs with their type, e.g.:
#
# RSpec.describe UsersController, type: :controller do
# # ...
# end
#
# The different available types are documented in the features, such as in
# https://relishapp.com/rspec/rspec-rails/docs
config.infer_spec_type_from_file_location!
# Filter lines from Rails gems in backtraces.
config.filter_rails_from_backtrace!
# arbitrary gems may also be filtered via:
# config.filter_gems_from_backtrace("gem name")
end
================================================
FILE: spec/spec_helper.rb
================================================
# This file was generated by the `rails generate rspec:install` command. Conventionally, all
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
# The generated `.rspec` file contains `--require spec_helper` which will cause
# this file to always be loaded, without a need to explicitly require it in any
# files.
#
# Given that it is always loaded, you are encouraged to keep this file as
# light-weight as possible. Requiring heavyweight dependencies from this file
# will add to the boot time of your test suite on EVERY test run, even for an
# individual file that may not need all of that loaded. Instead, consider making
# a separate helper file that requires the additional dependencies and performs
# the additional setup, and require it from the spec files that actually need
# it.
#
# See https://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
RSpec.configure do |config|
# rspec-expectations config goes here. You can use an alternate
# assertion/expectation library such as wrong or the stdlib/minitest
# assertions if you prefer.
config.expect_with :rspec do |expectations|
# This option will default to `true` in RSpec 4. It makes the `description`
# and `failure_message` of custom matchers include text for helper methods
# defined using `chain`, e.g.:
# be_bigger_than(2).and_smaller_than(4).description
# # => "be bigger than 2 and smaller than 4"
# ...rather than:
# # => "be bigger than 2"
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
end
# rspec-mocks config goes here. You can use an alternate test double
# library (such as bogus or mocha) by changing the `mock_with` option here.
config.mock_with :rspec do |mocks|
# Prevents you from mocking or stubbing a method that does not exist on
# a real object. This is generally recommended, and will default to
# `true` in RSpec 4.
mocks.verify_partial_doubles = true
end
# This option will default to `:apply_to_host_groups` in RSpec 4 (and will
# have no way to turn it off -- the option exists only for backwards
# compatibility in RSpec 3). It causes shared context metadata to be
# inherited by the metadata hash of host groups and examples, rather than
# triggering implicit auto-inclusion in groups with matching metadata.
config.shared_context_metadata_behavior = :apply_to_host_groups
# The settings below are suggested to provide a good initial experience
# with RSpec, but feel free to customize to your heart's content.
=begin
# This allows you to limit a spec run to individual examples or groups
# you care about by tagging them with `:focus` metadata. When nothing
# is tagged with `:focus`, all examples get run. RSpec also provides
# aliases for `it`, `describe`, and `context` that include `:focus`
# metadata: `fit`, `fdescribe` and `fcontext`, respectively.
config.filter_run_when_matching :focus
# Allows RSpec to persist some state between runs in order to support
# the `--only-failures` and `--next-failure` CLI options. We recommend
# you configure your source control system to ignore this file.
config.example_status_persistence_file_path = "spec/examples.txt"
# Limits the available syntax to the non-monkey patched syntax that is
# recommended. For more details, see:
# https://relishapp.com/rspec/rspec-core/docs/configuration/zero-monkey-patching-mode
config.disable_monkey_patching!
# Many RSpec users commonly either run the entire suite or an individual
# file, and it's useful to allow more verbose output when running an
# individual spec file.
if config.files_to_run.one?
# Use the documentation formatter for detailed output,
# unless a formatter has already been configured
# (e.g. via a command-line flag).
config.default_formatter = "doc"
end
# Print the 10 slowest examples and example groups at the
# end of the spec run, to help surface which specs are running
# particularly slow.
config.profile_examples = 10
# Run specs in random order to surface order dependencies. If you find an
# order dependency and want to debug it, you can fix the order by providing
# the seed, which is printed after each run.
# --seed 1234
config.order = :random
# Seed global randomization in this process using the `--seed` CLI option.
# Setting this allows you to use `--seed` to deterministically reproduce
# test failures related to randomization by passing the same `--seed` value
# as the one that triggered the failure.
Kernel.srand config.seed
=end
end
================================================
FILE: test/dummy/Rakefile
================================================
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require_relative "config/application"
Rails.application.load_tasks
================================================
FILE: test/dummy/app/assets/config/manifest.js
================================================
//= link_tree ../images
//= link_directory ../javascripts .js
//= link_directory ../stylesheets .css
================================================
FILE: test/dummy/app/assets/images/.keep
================================================
================================================
FILE: test/dummy/app/assets/javascripts/application.js
================================================
//= require echarts.min.js
//= require echarts/theme/vintage.js
//= require echarts/theme/dark.js
//= require echarts/theme/roma.js
//= require echarts/theme/red.js
//= require echarts/theme/jazz.js
//= require echarts/theme/royal.js
//= require echarts/theme/sakura.js
//= require echarts/theme/shine.js
//= require echarts/theme/london.js
//= require echarts/theme/infographic.js
//= require echarts/theme/fruit.js
//= require echarts/theme/macarons.js
//= require echarts/i18n/langES.js
//= require echarts/i18n/langES-obj.js
//= require echarts/i18n/langUK.js
//= require echarts/i18n/langUK-obj.js
================================================
FILE: test/dummy/app/assets/stylesheets/application.css
================================================
/* Application styles */
body {
/* padding-bottom: 200px !important;
background-color: #cc5577;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 100 60'%3E%3Cg %3E%3Crect fill='%23cc5577' width='11' height='11'/%3E%3Crect fill='%23ce5776' x='10' width='11' height='11'/%3E%3Crect fill='%23d05a76' y='10' width='11' height='11'/%3E%3Crect fill='%23d15c75' x='20' width='11' height='11'/%3E%3Crect fill='%23d35f74' x='10' y='10' width='11' height='11'/%3E%3Crect fill='%23d46174' y='20' width='11' height='11'/%3E%3Crect fill='%23d66473' x='30' width='11' height='11'/%3E%3Crect fill='%23d76673' x='20' y='10' width='11' height='11'/%3E%3Crect fill='%23d96972' x='10' y='20' width='11' height='11'/%3E%3Crect fill='%23da6c72' y='30' width='11' height='11'/%3E%3Crect fill='%23db6e71' x='40' width='11' height='11'/%3E%3Crect fill='%23dc7171' x='30' y='10' width='11' height='11'/%3E%3Crect fill='%23dd7471' x='20' y='20' width='11' height='11'/%3E%3Crect fill='%23de7671' x='10' y='30' width='11' height='11'/%3E%3Crect fill='%23df7971' y='40' width='11' height='11'/%3E%3Crect fill='%23e07c71' x='50' width='11' height='11'/%3E%3Crect fill='%23e17e71' x='40' y='10' width='11' height='11'/%3E%3Crect fill='%23e28171' x='30' y='20' width='11' height='11'/%3E%3Crect fill='%23e38471' x='20' y='30' width='11' height='11'/%3E%3Crect fill='%23e38771' x='10' y='40' width='11' height='11'/%3E%3Crect fill='%23e48972' y='50' width='11' height='11'/%3E%3Crect fill='%23e58c72' x='60' width='11' height='11'/%3E%3Crect fill='%23e58f73' x='50' y='10' width='11' height='11'/%3E%3Crect fill='%23e69173' x='40' y='20' width='11' height='11'/%3E%3Crect fill='%23e69474' x='30' y='30' width='11' height='11'/%3E%3Crect fill='%23e79775' x='20' y='40' width='11' height='11'/%3E%3Crect fill='%23e79a75' x='10' y='50' width='11' height='11'/%3E%3Crect fill='%23e89c76' x='70' width='11' height='11'/%3E%3Crect fill='%23e89f77' x='60' y='10' width='11' height='11'/%3E%3Crect fill='%23e8a278' x='50' y='20' width='11' height='11'/%3E%3Crect fill='%23e9a47a' x='40' y='30' width='11' height='11'/%3E%3Crect fill='%23e9a77b' x='30' y='40' width='11' height='11'/%3E%3Crect fill='%23e9aa7c' x='20' y='50' width='11' height='11'/%3E%3Crect fill='%23e9ac7e' x='80' width='11' height='11'/%3E%3Crect fill='%23eaaf7f' x='70' y='10' width='11' height='11'/%3E%3Crect fill='%23eab281' x='60' y='20' width='11' height='11'/%3E%3Crect fill='%23eab482' x='50' y='30' width='11' height='11'/%3E%3Crect fill='%23eab784' x='40' y='40' width='11' height='11'/%3E%3Crect fill='%23eaba86' x='30' y='50' width='11' height='11'/%3E%3Crect fill='%23ebbc88' x='90' width='11' height='11'/%3E%3Crect fill='%23ebbf8a' x='80' y='10' width='11' height='11'/%3E%3Crect fill='%23ebc18c' x='70' y='20' width='11' height='11'/%3E%3Crect fill='%23ebc48e' x='60' y='30' width='11' height='11'/%3E%3Crect fill='%23ebc790' x='50' y='40' width='11' height='11'/%3E%3Crect fill='%23ebc992' x='40' y='50' width='11' height='11'/%3E%3Crect fill='%23ebcc94' x='90' y='10' width='11' height='11'/%3E%3Crect fill='%23ebce97' x='80' y='20' width='11' height='11'/%3E%3Crect fill='%23ebd199' x='70' y='30' width='11' height='11'/%3E%3Crect fill='%23ecd39c' x='60' y='40' width='11' height='11'/%3E%3Crect fill='%23ecd69e' x='50' y='50' width='11' height='11'/%3E%3Crect fill='%23ecd8a1' x='90' y='20' width='11' height='11'/%3E%3Crect fill='%23ecdba4' x='80' y='30' width='11' height='11'/%3E%3Crect fill='%23ecdda6' x='70' y='40' width='11' height='11'/%3E%3Crect fill='%23ece0a9' x='60' y='50' width='11' height='11'/%3E%3Crect fill='%23ede2ac' x='90' y='30' width='11' height='11'/%3E%3Crect fill='%23ede4af' x='80' y='40' width='11' height='11'/%3E%3Crect fill='%23ede7b2' x='70' y='50' width='11' height='11'/%3E%3Crect fill='%23ede9b5' x='90' y='40' width='11' height='11'/%3E%3Crect fill='%23eeecb8' x='80' y='50' width='11' height='11'/%3E%3Crect fill='%23EEB' x='90' y='50' width='11' height='11'/%3E%3C/g%3E%3C/svg%3E");
background-attachment: fixed;
background-size: cover; */
background: gray;
color: white;
font-size: 30px;
}
.title, .subtitle {
color: white !important;
font-weight: bold;
font-size: 2rem !important;
}
.subtitle {
font-size: 1.5rem !important;
}
html .box {
background-color: #fff;
border-radius: 0px;
box-shadow: none;
display: block;
}
================================================
FILE: test/dummy/app/channels/application_cable/channel.rb
================================================
module ApplicationCable
class Channel < ActionCable::Channel::Base
end
end
================================================
FILE: test/dummy/app/channels/application_cable/connection.rb
================================================
module ApplicationCable
class Connection < ActionCable::Connection::Base
end
end
================================================
FILE: test/dummy/app/controllers/application_controller.rb
================================================
class ApplicationController < ActionController::Base
end
================================================
FILE: test/dummy/app/controllers/concerns/.keep
================================================
================================================
FILE: test/dummy/app/controllers/home_controller.rb
================================================
class HomeController < ApplicationController
def index
end
end
================================================
FILE: test/dummy/app/helpers/application_helper.rb
================================================
module ApplicationHelper
end
================================================
FILE: test/dummy/app/helpers/home_helper.rb
================================================
module HomeHelper
end
================================================
FILE: test/dummy/app/jobs/application_job.rb
================================================
class ApplicationJob < ActiveJob::Base
# Automatically retry jobs that encountered a deadlock
# retry_on ActiveRecord::Deadlocked
# Most jobs are safe to ignore if the underlying records are no longer available
# discard_on ActiveJob::DeserializationError
end
================================================
FILE: test/dummy/app/mailers/application_mailer.rb
================================================
class ApplicationMailer < ActionMailer::Base
default from: "from@example.com"
layout "mailer"
end
================================================
FILE: test/dummy/app/models/account.rb
================================================
# == Schema Information
#
# Table name: accounts
#
# id :integer not null, primary key
# name :string
# priority :integer
# created_at :datetime not null
# updated_at :datetime not null
#
class Account < ApplicationRecord
scope :high_priority, -> { where("priority >= 60") }
scope :low_priority, -> { where("priority < 60") }
def Account.populate
Account.delete_all
2000.times do
dob = Date.current - rand(100).years - rand(400).days
user = Account.create(
name: Faker::Name.name,
priority: rand(100),
created_at: Time.now - rand(100000).minutes
)
end
end
end
================================================
FILE: test/dummy/app/models/application_record.rb
================================================
class ApplicationRecord < ActiveRecord::Base
primary_abstract_class
end
================================================
FILE: test/dummy/app/models/commit.rb
================================================
class Commit < ApplicationRecord
def Commit.generate_random_data
Commit.delete_all
5000.times do |e|
Commit.create(created_at: rand(700).days.ago)
end
2000.times do |e|
Commit.create(created_at: rand(100..300).days.ago)
end
100.times do |e|
Commit.create(created_at: rand(200..300).days.ago)
end
100.times do |e|
Commit.create(created_at: rand(40..100).days.ago)
end
50.times do |e|
Commit.create(created_at: rand(50..80).days.ago)
end
end
def Commit.for_calendar_chart
{
data: Commit.group_by_day(:created_at).count.to_a
}
end
end
================================================
FILE: test/dummy/app/models/concerns/.keep
================================================
================================================
FILE: test/dummy/app/models/data.rb
================================================
class Data
def Data.populate
2000.times do
dob = Date.current - rand(100).years - rand(400).days
user = User.create(
name: Faker::Name.name,
country: Faker::Address.country,
age: Date.current.year - dob.year,
role: ['admin', 'user', 'moderator', 'user', 'moderator', 'user', 'moderator', 'sales', 'manager', 'security'].sample,
salary: 200 + rand(1_000),
dob: dob,
created_at: Time.now - rand(10000).minutes
)
end
User.where(role: 'user').find_each do |user|
user.salary = user.salary * 0.5
user.age = rand(30)
user.save
end
User.where(role: 'admin').find_each do |user|
user.salary = user.salary * 1.4
user.age += rand(30)
user.save
end
DataPoint.generate(1_000)
Account.populate
Stat.populate
Commit.generate_random_data
end
end
================================================
FILE: test/dummy/app/models/data_point.rb
================================================
# == Schema Information
#
# Table name: data_points
#
# id :integer not null, primary key
# value :integer
# event_date :date
#
class DataPoint < ApplicationRecord
def DataPoint.generate(n = 1000)
DataPoint.delete_all
start = 30.years.ago
DataPoint.data_set(n).each_with_index do |value, i|
DataPoint.create(
value: value,
event_date: start + i.days
)
end
end
def DataPoint.data_set(n = 1000)
result = []
n.times do |e|
value = Math.sin(0.005 * Math::PI * (e % n) / Math::PI) * 100000000
result << (value / 100000).to_i + rand(n/10)
end
result
end
def DataPoint.data_for_candlestick
[
['2013/1/24', 2320.26, 2320.26, 2287.3, 2362.94],
['2013/1/25', 2300, 2291.3, 2288.26, 2308.38],
['2013/1/28', 2295.35, 2346.5, 2295.35, 2346.92],
['2013/1/29', 2347.22, 2358.98, 2337.35, 2363.8],
['2013/1/30', 2360.75, 2382.48, 2347.89, 2383.76],
['2013/1/31', 2383.43, 2385.42, 2371.23, 2391.82],
['2013/2/1', 2377.41, 2419.02, 2369.57, 2421.15],
['2013/2/4', 2425.92, 2428.15, 2417.58, 2440.38],
['2013/2/5', 2411, 2433.13, 2403.3, 2437.42],
['2013/2/6', 2432.68, 2434.48, 2427.7, 2441.73],
['2013/2/7', 2430.69, 2418.53, 2394.22, 2433.89],
['2013/2/8', 2416.62, 2432.4, 2414.4, 2443.03],
['2013/2/18', 2441.91, 2421.56, 2415.43, 2444.8],
['2013/2/19', 2420.26, 2382.91, 2373.53, 2427.07],
['2013/2/20', 2383.49, 2397.18, 2370.61, 2397.94],
['2013/2/21', 2378.82, 2325.95, 2309.17, 2378.82],
['2013/2/22', 2322.94, 2314.16, 2308.76, 2330.88],
['2013/2/25', 2320.62, 2325.82, 2315.01, 2338.78],
['2013/2/26', 2313.74, 2293.34, 2289.89, 2340.71],
['2013/2/27', 2297.77, 2313.22, 2292.03, 2324.63],
['2013/2/28', 2322.32, 2365.59, 2308.92, 2366.16],
['2013/3/1', 2364.54, 2359.51, 2330.86, 2369.65],
['2013/3/4', 2332.08, 2273.4, 2259.25, 2333.54],
['2013/3/5', 2274.81, 2326.31, 2270.1, 2328.14],
['2013/3/6', 2333.61, 2347.18, 2321.6, 2351.44],
['2013/3/7', 2340.44, 2324.29, 2304.27, 2352.02],
['2013/3/8', 2326.42, 2318.61, 2314.59, 2333.67],
['2013/3/11', 2314.68, 2310.59, 2296.58, 2320.96],
['2013/3/12', 2309.16, 2286.6, 2264.83, 2333.29],
['2013/3/13', 2282.17, 2263.97, 2253.25, 2286.33],
['2013/3/14', 2255.77, 2270.28, 2253.31, 2276.22],
['2013/3/15', 2269.31, 2278.4, 2250, 2312.08],
['2013/3/18', 2267.29, 2240.02, 2239.21, 2276.05],
['2013/3/19', 2244.26, 2257.43, 2232.02, 2261.31],
['2013/3/20', 2257.74, 2317.37, 2257.42, 2317.86],
['2013/3/21', 2318.21, 2324.24, 2311.6, 2330.81],
['2013/3/22', 2321.4, 2328.28, 2314.97, 2332],
['2013/3/25', 2334.74, 2326.72, 2319.91, 2344.89],
['2013/3/26', 2318.58, 2297.67, 2281.12, 2319.99],
['2013/3/27', 2299.38, 2301.26, 2289, 2323.48],
['2013/3/28', 2273.55, 2236.3, 2232.91, 2273.55],
['2013/3/29', 2238.49, 2236.62, 2228.81, 2246.87],
['2013/4/1', 2229.46, 2234.4, 2227.31, 2243.95],
['2013/4/2', 2234.9, 2227.74, 2220.44, 2253.42],
['2013/4/3', 2232.69, 2225.29, 2217.25, 2241.34],
['2013/4/8', 2196.24, 2211.59, 2180.67, 2212.59],
['2013/4/9', 2215.47, 2225.77, 2215.47, 2234.73],
['2013/4/10', 2224.93, 2226.13, 2212.56, 2233.04],
['2013/4/11', 2236.98, 2219.55, 2217.26, 2242.48],
['2013/4/12', 2218.09, 2206.78, 2204.44, 2226.26],
['2013/4/15', 2199.91, 2181.94, 2177.39, 2204.99],
['2013/4/16', 2169.63, 2194.85, 2165.78, 2196.43],
['2013/4/17', 2195.03, 2193.8, 2178.47, 2197.51],
['2013/4/18', 2181.82, 2197.6, 2175.44, 2206.03],
['2013/4/19', 2201.12, 2244.64, 2200.58, 2250.11],
['2013/4/22', 2236.4, 2242.17, 2232.26, 2245.12],
['2013/4/23', 2242.62, 2184.54, 2182.81, 2242.62],
['2013/4/24', 2187.35, 2218.32, 2184.11, 2226.12],
['2013/4/25', 2213.19, 2199.31, 2191.85, 2224.63],
['2013/4/26', 2203.89, 2177.91, 2173.86, 2210.58],
['2013/5/2', 2170.78, 2174.12, 2161.14, 2179.65],
['2013/5/3', 2179.05, 2205.5, 2179.05, 2222.81],
['2013/5/6', 2212.5, 2231.17, 2212.5, 2236.07],
['2013/5/7', 2227.86, 2235.57, 2219.44, 2240.26],
['2013/5/8', 2242.39, 2246.3, 2235.42, 2255.21],
['2013/5/9', 2246.96, 2232.97, 2221.38, 2247.86],
['2013/5/10', 2228.82, 2246.83, 2225.81, 2247.67],
['2013/5/13', 2247.68, 2241.92, 2231.36, 2250.85],
['2013/5/14', 2238.9, 2217.01, 2205.87, 2239.93],
['2013/5/15', 2217.09, 2224.8, 2213.58, 2225.19],
['2013/5/16', 2221.34, 2251.81, 2210.77, 2252.87],
['2013/5/17', 2249.81, 2282.87, 2248.41, 2288.09],
['2013/5/20', 2286.33, 2299.99, 2281.9, 2309.39],
['2013/5/21', 2297.11, 2305.11, 2290.12, 2305.3],
['2013/5/22', 2303.75, 2302.4, 2292.43, 2314.18],
['2013/5/23', 2293.81, 2275.67, 2274.1, 2304.95],
['2013/5/24', 2281.45, 2288.53, 2270.25, 2292.59],
['2013/5/27', 2286.66, 2293.08, 2283.94, 2301.7],
['2013/5/28', 2293.4, 2321.32, 2281.47, 2322.1],
['2013/5/29', 2323.54, 2324.02, 2321.17, 2334.33],
['2013/5/30', 2316.25, 2317.75, 2310.49, 2325.72],
['2013/5/31', 2320.74, 2300.59, 2299.37, 2325.53],
['2013/6/3', 2300.21, 2299.25, 2294.11, 2313.43],
['2013/6/4', 2297.1, 2272.42, 2264.76, 2297.1],
['2013/6/5', 2270.71, 2270.93, 2260.87, 2276.86],
['2013/6/6', 2264.43, 2242.11, 2240.07, 2266.69],
['2013/6/7', 2242.26, 2210.9, 2205.07, 2250.63],
['2013/6/13', 2190.1, 2148.35, 2126.22, 2190.1]
].inject({}) do |res, k|
res[k[0]] = k[1..-1]
res
end
end
end
================================================
FILE: test/dummy/app/models/stat.rb
================================================
# == Schema Information
#
# Table name: stats
#
# id :integer not null, primary key
# country :string
# year :integer
# amount :integer
# created_at :datetime not null
# updated_at :datetime not null
#
class Stat < ApplicationRecord
def Stat.populate
Stat.delete_all
['Brazil', 'Indonesia', 'USA', 'India', 'China', 'Europe'].each do |country|
[2022, 2021].each do |year|
Stat.create(
country: country,
year: year,
amount: 100 * rand(1000),
created_at: rand(60).days.ago
)
end
end
end
end
================================================
FILE: test/dummy/app/models/user.rb
================================================
# == Schema Information
#
# Table name: users
#
# id :integer not null, primary key
# name :string
# country :string
# age :integer
# role :string
# salary :integer
# dob :date
# created_at :datetime not null
# updated_at :datetime not null
#
class User < ApplicationRecord
def User.get_data_for_radar_chart
@get_data_for_radar_chart ||= begin
roles = User.distinct.pluck(:role)
{
indicators: roles.inject({}) {|res, e| res[e] = User.maximum(:salary); res},
data: [
{
name: 'Average Salaries',
value: roles.map{|e| User.where(role: e).average(:salary).round(2)}
},
{
name: 'Maximum Salary',
value: roles.map{|e| User.where(role: e).maximum(:salary).round(2)}
}
],
}
end
end
def User.get_funnel_sample_data
{
data: [
{ value: 60, name: 'Visit' },
{ value: 40, name: 'Inquiry' },
{ value: 20, name: 'Order' },
{ value: 80, name: 'Click' },
{ value: 100, name: 'Show' }
]
}
end
def User.get_gauge_sample_data
{
data: [
{name: 'Active Users', value: 42}
]
}
end
def User.custom_gause_data
{
series: [
{
type: 'gauge',
center: ['50%', '60%'],
startAngle: 200,
endAngle: -20,
min: 0,
max: 60,
splitNumber: 12,
itemStyle: {
color: '#FFAB91'
},
progress: {
show: true,
width: 30
},
pointer: {
show: false
},
axisLine: {
lineStyle: {
width: 30
}
},
axisTick: {
distance: -45,
splitNumber: 5,
lineStyle: {
width: 2,
color: '#999'
}
},
splitLine: {
distance: -52,
length: 14,
lineStyle: {
width: 3,
color: '#999'
}
},
axisLabel: {
distance: -20,
color: '#999',
fontSize: 20
},
anchor: {
show: false
},
title: {
show: false
},
detail: {
valueAnimation: true,
width: '60%',
lineHeight: 40,
borderRadius: 8,
offsetCenter: [0, '-15%'],
fontSize: 60,
fontWeight: 'bolder',
formatter: '{value} °C',
color: 'auto'
},
data: [
{
value: 20
}
]
},
{
type: 'gauge',
center: ['50%', '60%'],
startAngle: 200,
endAngle: -20,
min: 0,
max: 60,
itemStyle: {
color: '#FD7347'
},
progress: {
show: true,
width: 8
},
pointer: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
},
splitLine: {
show: false
},
axisLabel: {
show: false
},
detail: {
show: false
},
data: [
{
value: 20
}
]
}
]
}
end
def User.random_scatter_chart(initial = 100, shift = 0)
r = []
100.times do |i|
r << [
(1+rand(initial).to_f).round(2), rand(shift.to_f).round(2)
]
end
r
# [
# [10.0, 8.04],
# [8.07, 6.95],
# [13.0, 7.58],
# [9.05, 8.81],
# [11.0, 8.33],
# [14.0, 7.66],
# [13.4, 6.81],
# [10.0, 6.33],
# [14.0, 8.96],
# [12.5, 6.82],
# [9.15, 7.2],
# [11.5, 7.2],
# [1.43, 4.23],
# [12.2, 7.83],
# [1.02, 4.47],
# [1.05, 3.33],
# [4.05, 4.96],
# [6.03, 7.24],
# [12.0, 6.26],
# [12.0, 8.84],
# [7.08, 5.82],
# [11.3, 7.16],
# [11.0, 10.4],
# [13.0, 6.26],
# [12.7, 10.84],
# [7.08, 5.80],
# [12.3, 7.26],
# [11.0, 10.4],
# [7.08, 5.82],
# [5.02, 5.68]
# ]
end
end
================================================
FILE: test/dummy/app/views/home/_area_chart.html.erb
================================================
area_chart #1
<%= area_chart User.group(:age).count,
height: '250px',
class: 'box',
theme: 'vintage',
options: {
xAxis: {
name: "Age"
},
yAxis: {
name: "Count"
},
series: {
name: "People Count"
}
}
%>
area_chart #2
<%= area_chart User.distinct.pluck(:role).map{|e| {name: e, data: User.where(role: e).group_by_day(:created_at).count} },
class: 'box',
debug: false,
theme: 'macarons'
%>
area_chart #3
<%= area_chart({10 => 24, 20 => 44, 30 => 57}, {class: 'box'}) %>
area_chart #4 + zoom
<%= area_chart DataPoint.pluck(:event_date, :value),
class: 'box',
code: false,
debug: false,
options: {
xAxis: {
type: 'time'
},
series: {
type: 'line'
},
dataZoom: [
{
start: 30,
end: 80
},
],
toolbox: {
show: true,
feature: {
dataZoom: {
yAxisIndex: 'none'
},
restore: {},
saveAsImage: {}
}
}
}
%>
area_chart #5 (with locale=UK)
<%= area_chart DataPoint.pluck(:event_date, :value),
class: 'box',
code: false,
debug: false,
locale: 'UK',
options: {
xAxis: {
type: 'time'
},
series: {
type: 'line'
},
}
%>
================================================
FILE: test/dummy/app/views/home/_bar_chart.html.erb
================================================
bar_chart #1
<%= bar_chart User.group(:role).sum(:salary),
class: 'box',
theme: 'roma',
options: {
xAxis: {
axisTick: {
alignWithLabel: true
}
},
tooltip: {
valueFormatter: RailsCharts.js("(value) => value + 'долларів'")
}
}
%>
bar_chart #2
<%= bar_chart User.group(:role).average(:age),
class: 'box',
theme: 'sakura',
options: {
series: {
barWidth: '50%'
},
tooltip: {
valueFormatter: RailsCharts.js("(value) => '$' + Math.round(value)")
}
}
%>
bar_chart #3
<%= bar_chart Stat.distinct.pluck(:year).map{|e| {name: e, data: Stat.where(year: e).group(:country).sum(:amount)} },
class: 'box',
theme: 'dark',
vertical: true,
options: {
grid: {
top: '15%',
left: '15%',
right: '15%'
},
title: {
text: 'World Population',
left: 'center',
top: '5%'
},
legend: {
bottom: '2%'
},
toolbox: {
feature: {
saveAsImage: {},
magicType: { type: ['stack', 'bar'] },
},
}
}
%>
bar_chart #4
<%= bar_chart({
'Mon' => 120,
'Tue' => 130,
'Wed' => {
value: 200,
itemStyle: {
color: '#a90000'
}
},
'Thu' => 70,
'Fri' => 150,
'Sat' => 190,
'Sun' => 140
}, {
class: 'box',
options: {}
}) %>
================================================
FILE: test/dummy/app/views/home/_calendar_chart.html.erb
================================================
calendar_chart #1
<%= calendar_chart Commit.for_calendar_chart,
class: 'box',
code: false,
options: {
visualMap: {
show: true,
min: 0,
max: 40,
orient: 'horizontal'
},
calendar: [{
range: '2021',
},]
}
%>
================================================
FILE: test/dummy/app/views/home/_candlestick_chart.html.erb
================================================
candlestick_chart #1
<%= candlestick_chart({
'2017-10-24' => [20, 34, 10, 38],
'2017-10-25' => [40, 35, 30, 50],
'2017-10-26' => [31, 38, 33, 44],
'2017-10-27' => [38, 15, 5, 42]
},
class: 'box',
theme: 'roma',
options: {
xAxis: {
axisTick: {
alignWithLabel: true
}
}
})
%>
candlestick_chart #2
<%= candlestick_chart DataPoint.data_for_candlestick,
class: 'box',
theme: 'sakura',
options: {
series: {
itemStyle: {
color: '#ec0000',
color0: '#008F28',
borderColor: '#8A0000',
borderColor0: '#008F28'
}
},
title: {
text: "Sample Report"
},
xAxis: {
boundaryGap: false,
axisLine: { onZero: false },
splitLine: { show: false },
min: 'dataMin',
max: 'dataMax'
},
yAxis: {
scale: true,
splitArea: {
show: true
}
},
dataZoom: [
{
type: 'inside',
start: 50,
end: 100
},
{
show: true,
type: 'slider',
top: '90%',
start: 50,
end: 100
}
],
}
%>
================================================
FILE: test/dummy/app/views/home/_custom_chart.html.erb
================================================
custom_chart #1
<%= custom_chart User.custom_gause_data %>
================================================
FILE: test/dummy/app/views/home/_funnel_chart.html.erb
================================================
funnel_chart #1
<%= funnel_chart User.get_funnel_sample_data,
class: 'box',
height: '400px',
options: {
title: {
text: 'Demo',
left: 'center'
}
}
%>
funnel_chart #2
<%= funnel_chart User.get_funnel_sample_data,
class: 'box',
height: '400px',
options: {
title: {
text: 'Funnel'
},
toolbox: {
feature: {
dataView: { readOnly: false },
restore: {},
saveAsImage: {}
}
},
legend: {
data: ['Show', 'Click', 'Visit', 'Inquiry', 'Order'],
bottom: 5,
textStyle: {
fontSize: '10'
}
}
}
%>
================================================
FILE: test/dummy/app/views/home/_gauge_chart.html.erb
================================================
gauge_chart #1
<%= gauge_chart User.get_gauge_sample_data,
class: 'box',
height: '400px',
options: {
title: {
text: 'Demo',
left: 'center'
}
}
%>
================================================
FILE: test/dummy/app/views/home/_line_chart.html.erb
================================================
line_chart #1
<%= line_chart User.group(:age).count, class: 'box',
code: false,
options: {
title: {
text: "People count by age",
left: 'center'
},
}
%>
line_chart #2
<%= line_chart User.distinct.pluck(:role).map{|e| {name: e, data: User.where(role: e).group_by_day(:created_at).count} },
class: 'box',
debug: false,
code: false,
theme: 'macarons',
options: {
title: {
text: "Signups by role"
},
toolbox: {
show: true,
feature: {
saveAsImage: {}
}
},
label: {
show: true,
position: 'top'
},
}
%>
line_chart #3
<%= line_chart User.group(:age).count, class: 'box',
code: false,
options: {
title: {
text: "People count by age v2",
left: 'center'
},
xAxis: {
boundaryGap: false,
},
yAxis: {
type: 'value',
boundaryGap: [0, '100%']
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
label: {
precision: 0
}
},
},
series: {
symbol: 'none',
sampling: 'lttb',
itemStyle: {
color: '#d65bca'
},
areaStyle: {
color: RailsCharts.js(%Q{new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: '#d65bca'
},
{
offset: 1,
color: '#00b712'
}
])}
)
}
}
}
%>
line_chart #4
<%= line_chart User.group(:age).count, class: 'box',
code: false,
renderer: 'svg',
options: {
title: {
text: "People count by age v2 (renderer svg)",
left: 'center'
},
xAxis: {
boundaryGap: false,
},
yAxis: {
type: 'value',
boundaryGap: [0, '100%']
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
label: {
precision: 0
}
},
},
series: {
symbol: 'none',
sampling: 'lttb',
itemStyle: {
color: '#d65bca'
},
areaStyle: {
color: RailsCharts.js(%Q{new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: '#d65bca'
},
{
offset: 1,
color: '#00b712'
}
])}
)
}
}
}
%>
================================================
FILE: test/dummy/app/views/home/_parallel_chart.html.erb
================================================
parallel_chart #1
<%= parallel_chart [
[1, 2, 1, "Ruby"],
[2, 3, 2, "JavaScript"],
[3, 1, 3, "C#"]
], {
options: {
parallelAxis: [
{ dim: 0, name: '2019', inverse: true, minInterval: 1, min: 1, nameTextStyle: { fontSize: 16 }, axisLabel: { fontSize: 16 } },
{ dim: 1, name: '2020', inverse: true, minInterval: 1, min: 1, nameTextStyle: { fontSize: 16 }, axisLabel: { fontSize: 16 } },
{ dim: 2, name: '2021', inverse: true, minInterval: 1, min: 1, nameTextStyle: { fontSize: 16 }, axisLabel: { fontSize: 16 } },
{ dim: 3, type: "category", name: 'Language', data: ["Ruby", "JavaScript", "C#"], inverse: true, nameTextStyle: { fontSize: 16 }, axisLabel: { fontSize: 14 } },
]
}
}
%>
================================================
FILE: test/dummy/app/views/home/_pie_donut_chart.html.erb
================================================
pie_chart #1
<%= pie_chart User.group(:role).count,
class: 'box',
options: {
legend: { orient: 'vertical', left: 'left' }
}
%>
donut_chart #1
<%= donut_chart User.group(:role).count,
class: 'box',
options: {
legend: {
bottom: '0'
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
%>
donut_chart #1
<%= pie_chart [
{ value: 335, name: 'Direct' },
{ value: 310, name: 'Email' },
{ value: 274, name: 'Union Ads' },
{ value: 235, name: 'Video Ads' },
{ value: 400, name: 'Search Engine' }
], {
options: {
backgroundColor: '#2c343c',
title: {
text: 'Customized Pie',
left: 'center',
top: 20,
textStyle: {
color: '#ccc'
}
},
tooltip: {
trigger: 'item'
},
visualMap: {
show: false,
min: 80,
max: 600,
inRange: {
colorLightness: [0, 1]
}
},
series: {
name: 'Access From',
type: 'pie',
radius: '55%',
center: ['50%', '50%'],
roseType: 'radius',
label: {
color: 'rgba(255, 255, 255, 0.3)'
},
labelLine: {
lineStyle: {
color: 'rgba(255, 255, 255, 0.3)'
},
smooth: 0.2,
length: 10,
length2: 20
},
itemStyle: {
color: '#c23531',
shadowBlur: 200,
shadowColor: 'rgba(0, 0, 0, 0.5)'
},
animationType: 'scale',
animationEasing: 'elasticOut',
animationDelay: RailsCharts.js(%Q{
function (idx) {
return Math.random() * 200;
}
})
}
}
}
%>
================================================
FILE: test/dummy/app/views/home/_radar_chart.html.erb
================================================
radar_chart #1
<%= radar_chart User.get_data_for_radar_chart,
class: 'box',
options: {
legend: {
data: ['Average Salaries', 'Maximum Salary'],
orient: 'vertical',
left: '20%'
}
}
%>
radar_chart + code: true
<%= radar_chart User.get_data_for_radar_chart,
class: 'box',
theme: 'dark',
code: true
%>
================================================
FILE: test/dummy/app/views/home/_sankey_chart.html.erb
================================================
sankey_chart #1
<%= sankey_chart({
data: [
{name: 'Ruby'}, {name: 'HTML'}, {name: 'JS'}, {name: 'Good'}, {name: 'Bad'}, {name: 'CSS'}, {name: 'PHP'}, {name: 'Frontend'}, {name: 'Backend'}
],
links: [
{
source: 'Ruby',
target: 'Good',
value: 1
},
{
source: 'HTML',
target: 'Good',
value: 1
},
{
source: 'JS',
target: 'Good',
value: 1
},
{
source: 'CSS',
target: 'Good',
value: 1
},
{
source: 'PHP',
target: 'Bad',
value: 1
},
{
source: 'Good',
target: 'Backend',
value: 1
},
{
source: 'Good',
target: 'Frontend',
value: 3
},
{
source: 'Bad',
target: 'Backend',
value: 1
},
]
}, {
options: {
# tooltip: {
# trigger: 'item'
# },
# series: {
# orient: 'vertical',
# }
}
})
%>
================================================
FILE: test/dummy/app/views/home/_scatter_chart.html.erb
================================================
scatter_charts #1 simple
<%= scatter_chart User.random_scatter_chart(500, 200),
{
code: false,
debug: false,
options: {
series: {
name: 'Random Data',
},
legend: {
data: [
{name: 'Random Data'}
]
},
},
class: 'box',
}
%>
scatter_charts #2 multiple
<%= scatter_chart [
{ name: 'John', data: User.random_scatter_chart(500, 200) },
{ name: 'Bob', data: User.random_scatter_chart(500, 1000) },
],
{
code: false,
debug: false,
class: 'box',
options: {
xAxis: {
name: 'Distance'
},
yAxis: {
name: 'Sales'
},
legend: {
data: [
{name: 'John'},
{name: 'Bob'},
]
},
},
}
%>
================================================
FILE: test/dummy/app/views/home/_stacked_bar_chart.html.erb
================================================
stacked_bar_chart #1
<%= stacked_bar_chart [
{ name: 'high priority', data: Account.high_priority.group_by_month(:created_at, format: "%b %Y").count },
{ name: 'low priority', data: Account.low_priority.group_by_month(:created_at, format: "%b %Y").count }
],
{
options: {
title: {
text: "Popular vs Unpopular"
},
},
code: false,
class: 'box',
vertical: true
}
%>
================================================
FILE: test/dummy/app/views/home/index.html.erb
================================================
Charts
Ruby Charts + Apache eCharts
<%= render 'line_chart' %>
<%= render 'area_chart' %>
<%= render 'bar_chart' %>
<%= render 'stacked_bar_chart' %>
<%= render 'scatter_chart' %>
<%= render 'pie_donut_chart' %>
<%= render 'radar_chart' %>
<%= render 'calendar_chart' %>
<%= render 'funnel_chart' %>
<%= render 'gauge_chart' %>
<%= render 'custom_chart' %>
<%= render 'parallel_chart' %>
<%= render 'sankey_chart' %>
<%= render 'candlestick_chart' %>
================================================
FILE: test/dummy/app/views/layouts/application.html.erb
================================================
Dummy
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
<%= yield %>
================================================
FILE: test/dummy/app/views/layouts/mailer.html.erb
================================================
<%= yield %>
================================================
FILE: test/dummy/app/views/layouts/mailer.text.erb
================================================
<%= yield %>
================================================
FILE: test/dummy/bin/rails
================================================
#!/usr/bin/env ruby
APP_PATH = File.expand_path("../config/application", __dir__)
require_relative "../config/boot"
require "rails/commands"
================================================
FILE: test/dummy/bin/rake
================================================
#!/usr/bin/env ruby
require_relative "../config/boot"
require "rake"
Rake.application.run
================================================
FILE: test/dummy/bin/setup
================================================
#!/usr/bin/env ruby
require "fileutils"
# path to your application root.
APP_ROOT = File.expand_path("..", __dir__)
def system!(*args)
system(*args) || abort("\n== Command #{args} failed ==")
end
FileUtils.chdir APP_ROOT do
# This script is a way to set up or update your development environment automatically.
# This script is idempotent, so that you can run it at any time and get an expectable outcome.
# Add necessary setup steps to this file.
puts "== Installing dependencies =="
system! "gem install bundler --conservative"
system("bundle check") || system!("bundle install")
# puts "\n== Copying sample files =="
# unless File.exist?("config/database.yml")
# FileUtils.cp "config/database.yml.sample", "config/database.yml"
# end
puts "\n== Preparing database =="
system! "bin/rails db:prepare"
puts "\n== Removing old logs and tempfiles =="
system! "bin/rails log:clear tmp:clear"
puts "\n== Restarting application server =="
system! "bin/rails restart"
end
================================================
FILE: test/dummy/config/application.rb
================================================
require_relative "boot"
require "rails/all"
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)
require "rails_charts"
module Dummy
class Application < Rails::Application
config.load_defaults Rails::VERSION::STRING.to_f
# Configuration for the application, engines, and railties goes here.
#
# These settings can be overridden in specific environments using the files
# in config/environments, which are processed later.
#
# config.time_zone = "Central Time (US & Canada)"
# config.eager_load_paths << Rails.root.join("extras")
end
end
require_relative "../app/models/data.rb"
================================================
FILE: test/dummy/config/boot.rb
================================================
# Set up gems listed in the Gemfile.
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../../Gemfile", __dir__)
require "bundler/setup" if File.exist?(ENV["BUNDLE_GEMFILE"])
$LOAD_PATH.unshift File.expand_path("../../../lib", __dir__)
================================================
FILE: test/dummy/config/cable.yml
================================================
development:
adapter: async
test:
adapter: test
production:
adapter: redis
url: <%= ENV.fetch("REDIS_URL") { "redis://localhost:6379/1" } %>
channel_prefix: dummy_production
================================================
FILE: test/dummy/config/database.yml
================================================
# SQLite. Versions 3.8.0 and up are supported.
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem "sqlite3"
#
default: &default
adapter: sqlite3
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
production:
<<: *default
database: db/production.sqlite3
================================================
FILE: test/dummy/config/environment.rb
================================================
# Load the Rails application.
require_relative "application"
# Initialize the Rails application.
Rails.application.initialize!
================================================
FILE: test/dummy/config/environments/development.rb
================================================
require "active_support/core_ext/integer/time"
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# In the development environment your application's code is reloaded any time
# it changes. This slows down response time but is perfect for development
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false
# Do not eager load code on boot.
config.eager_load = false
# Show full error reports.
config.consider_all_requests_local = true
# Enable server timing
config.server_timing = true
# Enable/disable caching. By default caching is disabled.
# Run rails dev:cache to toggle caching.
if Rails.root.join("tmp/caching-dev.txt").exist?
config.action_controller.perform_caching = true
config.action_controller.enable_fragment_cache_logging = true
config.cache_store = :memory_store
config.public_file_server.headers = {
"Cache-Control" => "public, max-age=#{2.days.to_i}"
}
else
config.action_controller.perform_caching = false
config.cache_store = :null_store
end
# Store uploaded files on the local file system (see config/storage.yml for options).
config.active_storage.service = :local
# Don't care if the mailer can't send.
config.action_mailer.raise_delivery_errors = false
config.action_mailer.perform_caching = false
# Print deprecation notices to the Rails logger.
config.active_support.deprecation = :log
# Raise exceptions for disallowed deprecations.
config.active_support.disallowed_deprecation = :raise
# Tell Active Support which deprecation messages to disallow.
config.active_support.disallowed_deprecation_warnings = []
# Raise an error on page load if there are pending migrations.
config.active_record.migration_error = :page_load
# Highlight code that triggered database queries in logs.
config.active_record.verbose_query_logs = true
# Raises error for missing translations.
# config.i18n.raise_on_missing_translations = true
# Annotate rendered view with file names.
# config.action_view.annotate_rendered_view_with_filenames = true
# Uncomment if you wish to allow Action Cable access from any origin.
# config.action_cable.disable_request_forgery_protection = true
end
================================================
FILE: test/dummy/config/environments/production.rb
================================================
require "active_support/core_ext/integer/time"
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# Code is not reloaded between requests.
config.cache_classes = true
# Eager load code on boot. This eager loads most of Rails and
# your application in memory, allowing both threaded web servers
# and those relying on copy on write to perform better.
# Rake tasks automatically ignore this option for performance.
config.eager_load = true
# Full error reports are disabled and caching is turned on.
config.consider_all_requests_local = false
config.action_controller.perform_caching = true
# Ensures that a master key has been made available in either ENV["RAILS_MASTER_KEY"]
# or in config/master.key. This key is used to decrypt credentials (and other encrypted files).
# config.require_master_key = true
# Disable serving static files from the `/public` folder by default since
# Apache or NGINX already handles this.
config.public_file_server.enabled = ENV["RAILS_SERVE_STATIC_FILES"].present?
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
# config.asset_host = "http://assets.example.com"
# Specifies the header that your server uses for sending files.
# config.action_dispatch.x_sendfile_header = "X-Sendfile" # for Apache
# config.action_dispatch.x_sendfile_header = "X-Accel-Redirect" # for NGINX
# Store uploaded files on the local file system (see config/storage.yml for options).
config.active_storage.service = :local
# Mount Action Cable outside main process or domain.
# config.action_cable.mount_path = nil
# config.action_cable.url = "wss://example.com/cable"
# config.action_cable.allowed_request_origins = [ "http://example.com", /http:\/\/example.*/ ]
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
# config.force_ssl = true
# Include generic and useful information about system operation, but avoid logging too much
# information to avoid inadvertent exposure of personally identifiable information (PII).
config.log_level = :info
# Prepend all log lines with the following tags.
config.log_tags = [ :request_id ]
# Use a different cache store in production.
# config.cache_store = :mem_cache_store
# Use a real queuing backend for Active Job (and separate queues per environment).
# config.active_job.queue_adapter = :resque
# config.active_job.queue_name_prefix = "dummy_production"
config.action_mailer.perform_caching = false
# Ignore bad email addresses and do not raise email delivery errors.
# Set this to true and configure the email server for immediate delivery to raise delivery errors.
# config.action_mailer.raise_delivery_errors = false
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to
# the I18n.default_locale when a translation cannot be found).
config.i18n.fallbacks = true
# Don't log any deprecations.
config.active_support.report_deprecations = false
# Use default logging formatter so that PID and timestamp are not suppressed.
config.log_formatter = ::Logger::Formatter.new
# Use a different logger for distributed setups.
# require "syslog/logger"
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new "app-name")
if ENV["RAILS_LOG_TO_STDOUT"].present?
logger = ActiveSupport::Logger.new(STDOUT)
logger.formatter = config.log_formatter
config.logger = ActiveSupport::TaggedLogging.new(logger)
end
# Do not dump schema after migrations.
config.active_record.dump_schema_after_migration = false
end
================================================
FILE: test/dummy/config/environments/test.rb
================================================
require "active_support/core_ext/integer/time"
# The test environment is used exclusively to run your application's
# test suite. You never need to work with it otherwise. Remember that
# your test database is "scratch space" for the test suite and is wiped
# and recreated between test runs. Don't rely on the data there!
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# Turn false under Spring and add config.action_view.cache_template_loading = true.
config.cache_classes = true
# Eager loading loads your whole application. When running a single test locally,
# this probably isn't necessary. It's a good idea to do in a continuous integration
# system, or in some way before deploying your code.
config.eager_load = ENV["CI"].present?
# Configure public file server for tests with Cache-Control for performance.
config.public_file_server.enabled = true
config.public_file_server.headers = {
"Cache-Control" => "public, max-age=#{1.hour.to_i}"
}
# Show full error reports and disable caching.
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
config.cache_store = :null_store
# Raise exceptions instead of rendering exception templates.
config.action_dispatch.show_exceptions = false
# Disable request forgery protection in test environment.
config.action_controller.allow_forgery_protection = false
# Store uploaded files on the local file system in a temporary directory.
config.active_storage.service = :test
config.action_mailer.perform_caching = false
# Tell Action Mailer not to deliver emails to the real world.
# The :test delivery method accumulates sent emails in the
# ActionMailer::Base.deliveries array.
config.action_mailer.delivery_method = :test
# Print deprecation notices to the stderr.
config.active_support.deprecation = :stderr
# Raise exceptions for disallowed deprecations.
config.active_support.disallowed_deprecation = :raise
# Tell Active Support which deprecation messages to disallow.
config.active_support.disallowed_deprecation_warnings = []
# Raises error for missing translations.
# config.i18n.raise_on_missing_translations = true
# Annotate rendered view with file names.
# config.action_view.annotate_rendered_view_with_filenames = true
end
================================================
FILE: test/dummy/config/initializers/content_security_policy.rb
================================================
# Be sure to restart your server when you modify this file.
# Define an application-wide content security policy
# For further information see the following documentation
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
# Rails.application.configure do
# config.content_security_policy do |policy|
# policy.default_src :self, :https
# policy.font_src :self, :https, :data
# policy.img_src :self, :https, :data
# policy.object_src :none
# policy.script_src :self, :https
# policy.style_src :self, :https
# # Specify URI for violation reports
# # policy.report_uri "/csp-violation-report-endpoint"
# end
#
# # Generate session nonces for permitted importmap and inline scripts
# config.content_security_policy_nonce_generator = ->(request) { request.session.id.to_s }
# config.content_security_policy_nonce_directives = %w(script-src)
#
# # Report CSP violations to a specified URI. See:
# # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only
# # config.content_security_policy_report_only = true
# end
================================================
FILE: test/dummy/config/initializers/filter_parameter_logging.rb
================================================
# Be sure to restart your server when you modify this file.
# Configure parameters to be filtered from the log file. Use this to limit dissemination of
# sensitive information. See the ActiveSupport::ParameterFilter documentation for supported
# notations and behaviors.
Rails.application.config.filter_parameters += [
:passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn
]
================================================
FILE: test/dummy/config/initializers/inflections.rb
================================================
# Be sure to restart your server when you modify this file.
# Add new inflection rules using the following format. Inflections
# are locale specific, and you may define rules for as many different
# locales as you wish. All of these examples are active by default:
# ActiveSupport::Inflector.inflections(:en) do |inflect|
# inflect.plural /^(ox)$/i, "\\1en"
# inflect.singular /^(ox)en/i, "\\1"
# inflect.irregular "person", "people"
# inflect.uncountable %w( fish sheep )
# end
# These inflection rules are supported but not enabled by default:
# ActiveSupport::Inflector.inflections(:en) do |inflect|
# inflect.acronym "RESTful"
# end
================================================
FILE: test/dummy/config/initializers/permissions_policy.rb
================================================
# Define an application-wide HTTP permissions policy. For further
# information see https://developers.google.com/web/updates/2018/06/feature-policy
#
# Rails.application.config.permissions_policy do |f|
# f.camera :none
# f.gyroscope :none
# f.microphone :none
# f.usb :none
# f.fullscreen :self
# f.payment :self, "https://secure.example.com"
# end
================================================
FILE: test/dummy/config/initializers/rails_charts.rb
================================================
# RailsCharts.options = {
# theme: nil
# }
================================================
FILE: test/dummy/config/locales/en.yml
================================================
# Files in the config/locales directory are used for internationalization
# and are automatically loaded by Rails. If you want to use locales other
# than English, add the necessary files in this directory.
#
# To use the locales, use `I18n.t`:
#
# I18n.t "hello"
#
# In views, this is aliased to just `t`:
#
# <%= t("hello") %>
#
# To use a different locale, set it with `I18n.locale`:
#
# I18n.locale = :es
#
# This would use the information in config/locales/es.yml.
#
# The following keys must be escaped otherwise they will not be retrieved by
# the default I18n backend:
#
# true, false, on, off, yes, no
#
# Instead, surround them with single quotes.
#
# en:
# "true": "foo"
#
# To learn more, please read the Rails Internationalization guide
# available at https://guides.rubyonrails.org/i18n.html.
en:
hello: "Hello world"
================================================
FILE: test/dummy/config/puma.rb
================================================
# Puma can serve each request in a thread from an internal thread pool.
# The `threads` method setting takes two numbers: a minimum and maximum.
# Any libraries that use thread pools should be configured to match
# the maximum value specified for Puma. Default is set to 5 threads for minimum
# and maximum; this matches the default thread size of Active Record.
#
max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }
threads min_threads_count, max_threads_count
# Specifies the `worker_timeout` threshold that Puma will use to wait before
# terminating a worker in development environments.
#
worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development"
# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
#
port ENV.fetch("PORT") { 3000 }
# Specifies the `environment` that Puma will run in.
#
environment ENV.fetch("RAILS_ENV") { "development" }
# Specifies the `pidfile` that Puma will use.
pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }
# Specifies the number of `workers` to boot in clustered mode.
# Workers are forked web server processes. If using threads and workers together
# the concurrency of the application would be max `threads` * `workers`.
# Workers do not work on JRuby or Windows (both of which do not support
# processes).
#
# workers ENV.fetch("WEB_CONCURRENCY") { 2 }
# Use the `preload_app!` method when specifying a `workers` number.
# This directive tells Puma to first boot the application and load code
# before forking the application. This takes advantage of Copy On Write
# process behavior so workers use less memory.
#
# preload_app!
# Allow puma to be restarted by `bin/rails restart` command.
plugin :tmp_restart
================================================
FILE: test/dummy/config/routes.rb
================================================
Rails.application.routes.draw do
root to: 'home#index'
end
================================================
FILE: test/dummy/config/storage.yml
================================================
test:
service: Disk
root: <%= Rails.root.join("tmp/storage") %>
local:
service: Disk
root: <%= Rails.root.join("storage") %>
# Use bin/rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
# amazon:
# service: S3
# access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
# secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
# region: us-east-1
# bucket: your_own_bucket-<%= Rails.env %>
# Remember not to checkin your GCS keyfile to a repository
# google:
# service: GCS
# project: your_project
# credentials: <%= Rails.root.join("path/to/gcs.keyfile") %>
# bucket: your_own_bucket-<%= Rails.env %>
# Use bin/rails credentials:edit to set the Azure Storage secret (as azure_storage:storage_access_key)
# microsoft:
# service: AzureStorage
# storage_account_name: your_account_name
# storage_access_key: <%= Rails.application.credentials.dig(:azure_storage, :storage_access_key) %>
# container: your_container_name-<%= Rails.env %>
# mirror:
# service: Mirror
# primary: local
# mirrors: [ amazon, google, microsoft ]
================================================
FILE: test/dummy/config.ru
================================================
# This file is used by Rack-based servers to start the application.
require_relative "config/environment"
run Rails.application
Rails.application.load_server
================================================
FILE: test/dummy/db/migrate/20220419161820_create_users.rb
================================================
require 'faker'
class CreateUsers < ActiveRecord::Migration[7.0]
def up
create_table :users do |t|
t.string :name
t.string :country
t.integer :age
t.string :role
t.integer :salary
t.date :dob
t.timestamps
end
create_table :accounts do |t|
t.string :name
t.integer :priority
t.timestamps
end
end
def down
drop_table :users
drop_table :accounts
end
end
================================================
FILE: test/dummy/db/migrate/20220420081306_create_stats.rb
================================================
require 'faker'
class CreateStats < ActiveRecord::Migration[7.0]
def change
create_table :stats do |t|
t.string :country
t.integer :year
t.integer :amount
t.timestamps
end
end
end
================================================
FILE: test/dummy/db/migrate/20220420125847_create_data_points.rb
================================================
class CreateDataPoints < ActiveRecord::Migration[7.0]
def change
create_table :data_points do |t|
t.integer :value
t.date :event_date
end
end
end
================================================
FILE: test/dummy/db/migrate/20220420191641_create_commits.rb
================================================
class CreateCommits < ActiveRecord::Migration[7.0]
def change
create_table :commits do |t|
t.datetime :created_at
end
end
end
================================================
FILE: test/dummy/db/schema.rb
================================================
# This file is auto-generated from the current state of the database. Instead
# of editing this file, please use the migrations feature of Active Record to
# incrementally modify your database, and then regenerate this schema definition.
#
# This file is the source Rails uses to define your schema when running `bin/rails
# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to
# be faster and is potentially less error prone than running all of your
# migrations from scratch. Old migrations may fail to apply correctly if those
# migrations use external dependencies or application code.
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema[8.0].define(version: 2022_04_20_191641) do
create_table "accounts", force: :cascade do |t|
t.string "name"
t.integer "priority"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
create_table "commits", force: :cascade do |t|
t.datetime "created_at"
end
create_table "data_points", force: :cascade do |t|
t.integer "value"
t.date "event_date"
end
create_table "stats", force: :cascade do |t|
t.string "country"
t.integer "year"
t.integer "amount"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
create_table "users", force: :cascade do |t|
t.string "name"
t.string "country"
t.integer "age"
t.string "role"
t.integer "salary"
t.date "dob"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
end
================================================
FILE: test/dummy/lib/assets/.keep
================================================
================================================
FILE: test/dummy/log/.keep
================================================
================================================
FILE: test/dummy/public/404.html
================================================
The page you were looking for doesn't exist (404)
The page you were looking for doesn't exist.
You may have mistyped the address or the page may have moved.
If you are the application owner check the logs for more information.
================================================
FILE: test/dummy/public/422.html
================================================
The change you wanted was rejected (422)
The change you wanted was rejected.
Maybe you tried to change something you didn't have access to.
If you are the application owner check the logs for more information.
================================================
FILE: test/dummy/public/500.html
================================================
We're sorry, but something went wrong (500)
We're sorry, but something went wrong.
If you are the application owner check the logs for more information.
================================================
FILE: test/test_helper.rb
================================================
# Configure Rails Environment
ENV["RAILS_ENV"] = "test"
require_relative "../test/dummy/config/environment"
ActiveRecord::Migrator.migrations_paths = [File.expand_path("../test/dummy/db/migrate", __dir__)]
require "rails/test_help"
# Load fixtures from the engine
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
ActiveSupport::TestCase.fixture_path = File.expand_path("fixtures", __dir__)
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
ActiveSupport::TestCase.file_fixture_path = ActiveSupport::TestCase.fixture_path + "/files"
ActiveSupport::TestCase.fixtures :all
end