-
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add support for JavaScript #5
Conversation
ccd84eb
to
f14a828
Compare
f14a828
to
d33abdc
Compare
/cc @ezzle Now this module supports native JavaScript definitions, which allow using Code Block```echarts {_js=true}
RETURN JAVASCRIPT CHARTS DEFINITION.
``` Shortcode{{< echarts _js=true >}}
RETURN JAVASCRIPT CHARTS DEFINITION.
{{< /echarts >}} Reading from js file, support site resource and page resource, i.e. {{< echarts _js=true _jsFile="charts/pie.js" />}} NotesThe JavaScript definition is almost same as the official example. But you should return the ```echarts {_js=true}
return {
color: ['#80FFA5', '#00DDFF', '#37A2FF', '#FF0087', '#FFBF00'],
title: {
text: 'Gradient Stacked Area Chart'
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
label: {
backgroundColor: '#6a7985'
}
}
},
legend: {
data: ['Line 1', 'Line 2', 'Line 3', 'Line 4', 'Line 5']
},
toolbox: {
feature: {
saveAsImage: {}
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [
{
type: 'category',
boundaryGap: false,
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
}
],
yAxis: [
{
type: 'value'
}
],
series: [
{
name: 'Line 1',
type: 'line',
stack: 'Total',
smooth: true,
lineStyle: {
width: 0
},
showSymbol: false,
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(128, 255, 165)'
},
{
offset: 1,
color: 'rgb(1, 191, 236)'
}
])
},
emphasis: {
focus: 'series'
},
data: [140, 232, 101, 264, 90, 340, 250]
},
{
name: 'Line 2',
type: 'line',
stack: 'Total',
smooth: true,
lineStyle: {
width: 0
},
showSymbol: false,
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(0, 221, 255)'
},
{
offset: 1,
color: 'rgb(77, 119, 255)'
}
])
},
emphasis: {
focus: 'series'
},
data: [120, 282, 111, 234, 220, 340, 310]
},
{
name: 'Line 3',
type: 'line',
stack: 'Total',
smooth: true,
lineStyle: {
width: 0
},
showSymbol: false,
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(55, 162, 255)'
},
{
offset: 1,
color: 'rgb(116, 21, 219)'
}
])
},
emphasis: {
focus: 'series'
},
data: [320, 132, 201, 334, 190, 130, 220]
},
{
name: 'Line 4',
type: 'line',
stack: 'Total',
smooth: true,
lineStyle: {
width: 0
},
showSymbol: false,
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(255, 0, 135)'
},
{
offset: 1,
color: 'rgb(135, 0, 157)'
}
])
},
emphasis: {
focus: 'series'
},
data: [220, 402, 231, 134, 190, 230, 120]
},
{
name: 'Line 5',
type: 'line',
stack: 'Total',
smooth: true,
lineStyle: {
width: 0
},
showSymbol: false,
label: {
show: true,
position: 'top'
},
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(255, 191, 0)'
},
{
offset: 1,
color: 'rgb(224, 62, 76)'
}
])
},
emphasis: {
focus: 'series'
},
data: [220, 302, 181, 234, 210, 290, 150]
}
]
}
``` |
Hi Razon.
Thank you.
I was able to test with real-life use cases and mixing with toggle module.
Js options version also OK, except js file from page ressource. Js file
from asset folder OK.
Can you clarify how to use with files data from page ressource.
I think you can release a public first version.
Thank you very much.
Best regards,
Tshitshi
Le mer. 13 mars 2024 à 09:27, Razon Yang ***@***.***> a
écrit :
… /cc @ezzle <https://github.com/ezzle>
Now this module supports native JavaScript definitions, which allow using
echarts functionalities and do some complex calculating.
Code Block
```echarts {_js=true}RETURN JAVASCRIPT CHARTS DEFINITION.```
Shortcode
{{< echarts _js=true >}}
RETURN JAVASCRIPT CHARTS DEFINITION.
{{< /echarts >}}
Reading from js file, support site resource and page resource, i.e.
assets/charts/pie.js.
{{< echarts _js=true _jsFile="charts/pie.js" />}}
Notes
The JavaScript definition is almost same as the official example. But you
should *return* the options. for example.
```echarts {_js=true}return { color: ['#80FFA5', '#00DDFF', '#37A2FF', '#FF0087', '#FFBF00'], title: { text: 'Gradient Stacked Area Chart' }, tooltip: { trigger: 'axis', axisPointer: { type: 'cross', label: { backgroundColor: '#6a7985' } } }, legend: { data: ['Line 1', 'Line 2', 'Line 3', 'Line 4', 'Line 5'] }, toolbox: { feature: { saveAsImage: {} } }, grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, xAxis: [ { type: 'category', boundaryGap: false, data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] } ], yAxis: [ { type: 'value' } ], series: [ { name: 'Line 1', type: 'line', stack: 'Total', smooth: true, lineStyle: { width: 0 }, showSymbol: false, areaStyle: { opacity: 0.8, color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: 'rgb(128, 255, 165)' }, { offset: 1, color: 'rgb(1, 191, 236)' } ]) }, emphasis: { focus: 'series' }, data: [140, 232, 101, 264, 90, 340, 250] }, { name: 'Line 2', type: 'line', stack: 'Total', smooth: true, lineStyle: { width: 0 }, showSymbol: false, areaStyle: { opacity: 0.8, color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: 'rgb(0, 221, 255)' }, { offset: 1, color: 'rgb(77, 119, 255)' } ]) }, emphasis: { focus: 'series' }, data: [120, 282, 111, 234, 220, 340, 310] }, { name: 'Line 3', type: 'line', stack: 'Total', smooth: true, lineStyle: { width: 0 }, showSymbol: false, areaStyle: { opacity: 0.8, color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: 'rgb(55, 162, 255)' }, { offset: 1, color: 'rgb(116, 21, 219)' } ]) }, emphasis: { focus: 'series' }, data: [320, 132, 201, 334, 190, 130, 220] }, { name: 'Line 4', type: 'line', stack: 'Total', smooth: true, lineStyle: { width: 0 }, showSymbol: false, areaStyle: { opacity: 0.8, color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: 'rgb(255, 0, 135)' }, { offset: 1, color: 'rgb(135, 0, 157)' } ]) }, emphasis: { focus: 'series' }, data: [220, 402, 231, 134, 190, 230, 120] }, { name: 'Line 5', type: 'line', stack: 'Total', smooth: true, lineStyle: { width: 0 }, showSymbol: false, label: { show: true, position: 'top' }, areaStyle: { opacity: 0.8, color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: 'rgb(255, 191, 0)' }, { offset: 1, color: 'rgb(224, 62, 76)' } ]) }, emphasis: { focus: 'series' }, data: [220, 302, 181, 234, 210, 290, 150] } ]}```
—
Reply to this email directly, view it on GitHub
<#5 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALX32WNEUMW253QFMPNZWL3YYAEWNAVCNFSM6AAAAABETUPUBOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJTHAYDMNZZGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I'm working on the docs site to cover all the use case, will publish it later. |
Update about file from page ressource : OK too.
Thank you very much for the excellent work. Adding echarts support to the
already reach hugomods collections is a good step.
Best regards,
Tshitshi
Le jeu. 14 mars 2024 à 07:57, Razon Yang ***@***.***> a
écrit :
… Can you clarify how to use with files data from page ressource.
I'm working on the docs site to cover all the use case, will publish it
later.
—
Reply to this email directly, view it on GitHub
<#5 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALX32WP5PME3U4QIITUAV43YYFC5LAVCNFSM6AAAAABETUPUBOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJWGY3TEMJUGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Docs site is live now https://echarts.hugomods.com/, I also drafted a version. But it seems a problem about using JS way on production, seems Cloudflare Pages omit it, I'm working on it. If you're not using Cloudflare Pages, please let me know whether if the JS way work on your platform. |
I plan to use netlify. Feedback when tested
Le jeu. 14 mars 2024 à 08:53, Razon Yang ***@***.***> a
écrit :
… Docs site is live now https://echarts.hugomods.com/, I also drafted a
version.
But it seems a problem about using JS way on production, seems Cloudflare
Pages omit it, I'm working on it.
If you're not using Cloudflare Pages, please let me know whether if the JS
way work on your platform.
—
Reply to this email directly, view it on GitHub
<#5 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALX32WN7LCZDTN2F3DJU3W3YYFJQRAVCNFSM6AAAAABETUPUBOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJWG43DKNBSHE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
That issue was fixed (not related to platform), please upgrade to v0.1.3. |
No description provided.