mirror of
https://gitee.com/smartchart/smartchart
synced 2025-05-05 09:09:24 +08:00
v3.9.9.1
This commit is contained in:
parent
16edf96828
commit
be06561e63
10
README.md
10
README.md
@ -16,7 +16,7 @@
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<img src="https://img.shields.io/badge/Release-V3.9.8-green.svg" alt="Downloads">
|
<img src="https://img.shields.io/badge/Release-V3.9.9-green.svg" alt="Downloads">
|
||||||
<a target="_blank" href="https://www.python.org/downloads/release/python-390/">
|
<a target="_blank" href="https://www.python.org/downloads/release/python-390/">
|
||||||
<img src="https://img.shields.io/badge/Python-3.6+-green.svg" />
|
<img src="https://img.shields.io/badge/Python-3.6+-green.svg" />
|
||||||
</a>
|
</a>
|
||||||
@ -85,14 +85,11 @@
|
|||||||
```shell script
|
```shell script
|
||||||
本地命令行启动:
|
本地命令行启动:
|
||||||
smartchart
|
smartchart
|
||||||
如果你需要远程访问,服务端启动方式:
|
如果你是服务器部署,远程访问,服务端启动方式:
|
||||||
smartchart runserver 0.0.0.0:8000 --insecure
|
smartchart runserver 0.0.0.0:8000 --insecure
|
||||||
```
|
```
|
||||||
**访问首页http://127.0.0.1:8000 后点击首页右上方的云图标初始化数据**
|
|
||||||
**管理员帐号密码: admin/admin, 请及时更改密码**
|
**管理员帐号密码: admin/admin, 请及时更改密码**
|
||||||
|
|
||||||
**开发前建意新建一个非超级管理员帐号(重要),避免改到内置的数据集和图形**
|
|
||||||
|
|
||||||
**开发前请 观看视屏说明!!! 重要!! 重要!!**
|
**开发前请 观看视屏说明!!! 重要!! 重要!!**
|
||||||
- [Smartchart数据库与数据集SQL](https://www.ixigua.com/6910413586208653837?id=6902584882958959116 "SQL")
|
- [Smartchart数据库与数据集SQL](https://www.ixigua.com/6910413586208653837?id=6902584882958959116 "SQL")
|
||||||
- [Smartchart页面快速布局](https://www.ixigua.com/6910413586208653837?id=6907784122065191438 "布局")
|
- [Smartchart页面快速布局](https://www.ixigua.com/6910413586208653837?id=6907784122065191438 "布局")
|
||||||
@ -196,7 +193,7 @@ pip install smartchart
|
|||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
### 开发指引与声明:
|
### 开发指引与声明:
|
||||||
**此项目为前端代码开源可商用(需保留作者信息)**
|
**此项目为前端代码开源(需保留作者信息)**
|
||||||
```shell script
|
```shell script
|
||||||
对应的项目目录说明:
|
对应的项目目录说明:
|
||||||
|
|
||||||
@ -225,6 +222,7 @@ v3.9.8.17 支持最新的Echarts5.0, 优化加载速度
|
|||||||
v3.9.8.20 用户自定义图形管理功能升级
|
v3.9.8.20 用户自定义图形管理功能升级
|
||||||
v3.9.8.23 Echarts升级5.0.1, 支持一个数据集对应多查询, 资源本地化
|
v3.9.8.23 Echarts升级5.0.1, 支持一个数据集对应多查询, 资源本地化
|
||||||
v3.9.9.0 print函数优化,新增数据透视函数,个人静态资源路径显示, db2支持
|
v3.9.9.0 print函数优化,新增数据透视函数,个人静态资源路径显示, db2支持
|
||||||
|
v3.9.9.1 开发界面美化
|
||||||
```
|
```
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
@ -1 +1 @@
|
|||||||
eval(function(p,a,c,k,e,r){e=function(c){return(c<62?'':e(parseInt(c/62)))+((c=c%62)>35?String.fromCharCode(c+29):c.toString(36))};if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'([4-9e-hln-rt-xzA-Z]|1\\w)'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('5 1j(f,x){4 i=f.8;1k(i--){7(f[i]===x){6 E}}6 T}5 ds_transform(e){4 t=[];g(4 i=0;i<e[1].8;i++){t[i]=[]}g(i=0;i<e.8;i++){g(4 j=0;j<e[i].8;j++){t[j][i]=e[i][j]}}6 t}5 ds_split(9,16=\',\',18=[]){4 e=[];7(18){e.h(18.r(9[0].u(1)))}F{e.h(9[0][0].19(16).r(9[0].u(1)))}g(4 i=1;i<9.8;i++){e.h(9[i][0].19(16).r(9[i].u(1)))}6 e}5 ds_rowname(e,1a=1){4 t=[];g(4 i=1a;i<e.8;i++){t[i-1a]=e[i][0]}6 t}5 ds_remove_column(e,1l=[0]){4 t=[];g(4 i=0;i<e.8;i++){t[i]=[]}g(i=0;i<e.8;i++){4 k=0;g(4 j=0;j<e[i].8;j++){7(1j(1l,j)===T){t[i][k]=e[i][j];k=k+1}}}6 t}5 ds_createMap(9){4 X={};g(4 i=0;i<9.8;i++){4 Y=[];g(4 j=1;j<9[i].8;j++){Y.h(9[i][j])}7(9[i][0].8>0){X[9[i][0]]=Y}F{X[\'0\']=Y}}6 X}5 ds_createMap_all(9){4 e=[];4 Z={};g(4 i=1;i<9.8;i++){Z={};g(4 j=0;j<9[i].8;j++){Z[9[0][j]]=9[i][j]}e.h(Z)}6 e}5 ds_fontSize(1m){4 docEl=U.1n;4 V=window.innerWidth||U.1n.V||U.W.V;7(!V)6;4 1o=100*(V/1920);6 1m*1o}5 addWaterMarker(10){4 z=U.createElement(\'canvas\');4 W=U.W;W.appendChild(z);z.1p=400;z.1q=200;z.J.display=\'none\';4 G=z.getContext(\'2d\');G.rotate(-20*1r.PI/180);G.font="16px Microsoft JhengHei";G.fillStyle="rgba(17, 17, 17, 0.50)";G.textAlign=\'left\';G.textBaseline=\'Middle\';G.fillText(10,z.1p/3,z.1q/2);W.J.backgroundImage="url("+z.toDataURL("image/png")+")"}5 ds_getUpdown(H,l=0){4 11="1s";4 12="1t";7(l>0){11="1t";12="1s"}7(H>0){6\'<B J="13:\'+11+\'">\'+H+\'<B J="13:\'+11+\'" 1u="14 14-1v-up"></B></B>\'}F{6\'<B J="13:\'+12+\'">\'+H+\'<B J="13:\'+12+\'" 1u="14 14-1v-down"></B></B>\'}}5 ds_toThousands(l){l=(l||0).toString(),o=\'\';4 v=l<0?"-":"";4 9=(1r.abs(l)+"").19(\'\\.\');l=9[0];1k(l.8>3){o=\',\'+l.u(-3)+o;l=l.u(0,l.8-3)}7(l){o=l+o}7(9.8===1){6 v+o}6 v+o+\'.\'+9[1]}5 ds_distinct(a,b=[]){4 f=a.r(b);4 o=[];4 x={};g(4 i=0;i<f.8;i++){7(!x[f[i]]){o.h(f[i]);x[f[i]]=1}}6 o}5 ds_pivot(f){4 K=[];4 L=[];4 1b={};4 1c={};4 x={};4 o=[];4 M=[f[0][0]];4 i=0;g(i=1;i<f.8;i++){7(!1b[f[i][0]]){K.h(f[i][0]);1b[f[i][0]]=1}7(!1c[f[i][1]]){L.h(f[i][1]);1c[f[i][1]]=1}x[f[i][0]+f[i][1]]=f[i][2]}o.h(M.r(L));g(i=0;i<K.8;i++){M=[K[i]];g(4 j=0;j<L.8;j++){7(!x[K[i]+L[j]]){M.h(0)}F{M.h(x[K[i]+L[j]])}}o.h(M)}6 o}5 1d(a,b,C=E,A=1){4 c=[];4 N=[];4 v=T;4 i=1;g(i=1;i<b[0].8;i++){N.h(0)}7(C){c.h(a[0].r(b[0].u(1)));a=a.u(1);b=b.u(1)}a.1e(5(15){v=E;b.1e(5(I){7(15[0]===I[0]){c.h(15.r(I.u(1)));v=T}});7(v&&A){c.h(15.r(N))}});7(A===2){N=[];g(i=1;i<a[0].8;i++){N.h(0)}b.1e(5(I){v=E;g(i=0;i<a.8;i++){7(a[i][0]===I[0]){v=T;break}}7(v){c.h([I[0]].r(N).r(I.u(1)))}})}6 c}5 ds_crossjoin(a,b,C=E){6 1d(a,b,C,0)}5 ds_fulljoin(a,b,C=E){6 1d(a,b,C,2)}5 ds_union(a,b,C=E){4 c=[];7(C){c=a.r(b.u(1))}F{c=a.r(b)}6 c}5 1w(H,1x){7(!H){6 1x}6 H}5 ds_round(l,1y=2){6 l.toFixed(1y)}5 ds_param(1z){7("undefined"!=typeof 1A){6(1w(1A[1z],\'\'))}F{6\'\'}}5 Decimal(10){6 parseFloat(10)}5 1B(){1C.1D=5(y,m,d,O,P,s,Q){O=O||0;P=P||0;s=s||0;Q=Q||0;6\'\'+y+\'-\'+m+\'-\'+d};1C.date=5(y,m,d,O,P,s,Q){O=O||0;P=P||0;s=s||0;Q=Q||0;6\'\'+y+\'-\'+m+\'-\'+d}}1E 1D=new 1B;1E None=null;5 startSelectAnimate(w,1F,1G=1000,1H=1){4 R=-1;setInterval(5(){w.S({A:\'1f\',q:0,n:R});R=(R+1)%1F;w.S({A:\'1g\',q:0,n:R});7(1H){w.S({A:\'showTip\',q:0,n:R})}},1G)}5 dismissChangeRelatedObjectPopup(1I,objId,newRepr,1J){1I.close();console.log(1J);location.reload()}5 clickaction(w,p=\'\'){4 1K=`1L q${p}=-1;1L n${p}=-1;w.on(\'click\',5(D){w.S({A:\'1f\',q:q${p},n:n${p}});4 1h=\'1g\';7(q${p}===D.1i&&n${p}===D.n){q${p}=-1;n${p}=-1;1h=\'1f\'}F{q${p}=D.1i;n${p}=D.n}w.S({A:1h,q:D.1i,n:D.n})});w.on(\'mouseout\',5(D){7(q${p}>-1){w.S({A:"1g",q:q${p},n:n${p}})}});`;eval(1K)}',[],110,'||||let|function|return|if|length|data|||||dataset|arr|for|push||||num||dataIndex|result|seq|seriesIndex|concat||seted|slice|flag|myChart|obj||can|type|span|withhead|params|true|else|cans|param|val2|style|c1|c2|tmp|blank|hh|mm|ss|currentIndex|dispatchAction|false|document|clientWidth|body|map|t1|tmpmap|str|colorUp|colorDown|color|glyphicon|val|sep||head_add|split|start_row|obj1|obj2|ds_leftjoin|forEach|downplay|highlight|acttype|componentIndex|lst_contains|while|remove_list|res|documentElement|fontSize|width|height|Math|green|red|class|arrow|getUndefined|defaultValue|qty|name|filter_param|Mytime|this|datetime|const|dataLen|interval|showtip|win|newId|actionstr|var'.split('|'),0,{}))
|
eval(function(p,a,c,k,e,r){e=function(c){return(c<62?'':e(parseInt(c/62)))+((c=c%62)>35?String.fromCharCode(c+29):c.toString(36))};if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'([4-9e-hln-rt-xzA-Z]|1\\w)'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('5 1k(f,x){4 i=f.8;1l(i--){7(f[i]===x){6 B}}6 J}5 ds_transform(e){4 t=[];g(4 i=0;i<e[1].8;i++){t[i]=[]}g(i=0;i<e.8;i++){g(4 j=0;j<e[i].8;j++){t[j][i]=e[i][j]}}6 t}5 ds_split(9,18=\',\',19=[]){4 e=[];7(19){e.h(19.r(9[0].u(1)))}F{e.h(9[0][0].1a(18).r(9[0].u(1)))}g(4 i=1;i<9.8;i++){e.h(9[i][0].1a(18).r(9[i].u(1)))}6 e}5 ds_rowname(e,1b=1){4 t=[];g(4 i=1b;i<e.8;i++){t[i-1b]=e[i][0]}6 t}5 ds_remove_column(e,1m=[0]){4 t=[];g(4 i=0;i<e.8;i++){t[i]=[]}g(i=0;i<e.8;i++){4 k=0;g(4 j=0;j<e[i].8;j++){7(1k(1m,j)===J){t[i][k]=e[i][j];k=k+1}}}6 t}5 ds_createMap(9){4 X={};g(4 i=0;i<9.8;i++){4 Y=[];g(4 j=1;j<9[i].8;j++){Y.h(9[i][j])}7(9[i][0].8>0){X[9[i][0]]=Y}F{X[\'0\']=Y}}6 X}5 ds_createMap_all(9){4 e=[];4 Z={};g(4 i=1;i<9.8;i++){Z={};g(4 j=0;j<9[i].8;j++){Z[9[0][j]]=9[i][j]}e.h(Z)}6 e}5 ds_fontSize(1n){4 docEl=U.1o;4 V=window.innerWidth||U.1o.V||U.W.V;7(!V)6;4 1p=100*(V/1920);6 1n*1p}5 addWaterMarker(10){4 z=U.createElement(\'canvas\');4 W=U.W;W.appendChild(z);z.1q=400;z.1r=200;z.K.display=\'none\';4 G=z.getContext(\'2d\');G.rotate(-20*1s.PI/180);G.font="16px Microsoft JhengHei";G.fillStyle="rgba(17, 17, 17, 0.50)";G.textAlign=\'left\';G.textBaseline=\'Middle\';G.fillText(10,z.1q/3,z.1r/2);W.K.backgroundImage="url("+z.toDataURL("image/png")+")"}5 ds_getUpdown(H,l=0){4 11="1t";4 12="1u";7(l>0){11="1u";12="1t"}7(H>0){6\'<C K="13:\'+11+\'">\'+H+\'<C K="13:\'+11+\'" 1v="14 14-1w-up"></C></C>\'}F{6\'<C K="13:\'+12+\'">\'+H+\'<C K="13:\'+12+\'" 1v="14 14-1w-down"></C></C>\'}}5 ds_toThousands(l){l=(l||0).toString(),o=\'\';4 v=l<0?"-":"";4 9=(1s.abs(l)+"").1a(\'\\.\');l=9[0];1l(l.8>3){o=\',\'+l.u(-3)+o;l=l.u(0,l.8-3)}7(l){o=l+o}7(9.8===1){6 v+o}6 v+o+\'.\'+9[1]}5 ds_distinct(a,b=[]){4 f=a.r(b);4 o=[];4 x={};g(4 i=0;i<f.8;i++){7(!x[f[i]]){o.h(f[i]);x[f[i]]=1}}6 o}5 ds_pivot(f){4 L=[];4 M=[];4 1c={};4 1d={};4 x={};4 o=[];4 N=[f[0][0]];4 i=0;g(i=1;i<f.8;i++){7(!1c[f[i][0]]){L.h(f[i][0]);1c[f[i][0]]=1}7(!1d[f[i][1]]){M.h(f[i][1]);1d[f[i][1]]=1}x[f[i][0]+f[i][1]]=f[i][2]}o.h(N.r(M));g(i=0;i<L.8;i++){N=[L[i]];g(4 j=0;j<M.8;j++){7(!x[L[i]+M[j]]){N.h(0)}F{N.h(x[L[i]+M[j]])}}o.h(N)}6 o}5 1e(a,b,D=B,A=1){4 c=[];4 O=[];4 v=J;4 i=1;g(i=1;i<b[0].8;i++){O.h(0)}7(D){c.h(a[0].r(b[0].u(1)));a=a.u(1);b=b.u(1)}a.1f(5(15){v=B;b.1f(5(I){7(15[0]===I[0]){c.h(15.r(I.u(1)));v=J}});7(v&&A){c.h(15.r(O))}});7(A===2){O=[];g(i=1;i<a[0].8;i++){O.h(0)}b.1f(5(I){v=B;g(i=0;i<a.8;i++){7(a[i][0]===I[0]){v=J;break}}7(v){c.h([I[0]].r(O).r(I.u(1)))}})}6 c}5 ds_crossjoin(a,b,D=B){6 1e(a,b,D,0)}5 ds_fulljoin(a,b,D=B){6 1e(a,b,D,2)}5 ds_union(a,b,D=B){4 c=[];7(D){c=a.r(b.u(1))}F{c=a.r(b)}6 c}5 1x(H,1y){7(!H){6 1y}6 H}5 ds_round(l,1z=2){6 l.toFixed(1z)}5 ds_param(1A){7("undefined"!=typeof 1B){6(1x(1B[1A],\'\'))}F{6\'\'}}5 Decimal(10){6 parseFloat(10)}5 1C(){1D.1E=5(y,m,d,P,Q,s,R){P=P||0;Q=Q||0;s=s||0;R=R||0;6\'\'+y+\'-\'+m+\'-\'+d};1D.date=5(y,m,d,P,Q,s,R){P=P||0;Q=Q||0;s=s||0;R=R||0;6\'\'+y+\'-\'+m+\'-\'+d}}16 1E=new 1C;16 None=null;16 False=J;16 True=B;5 startSelectAnimate(w,1F,1G=1000,1H=1){4 S=-1;setInterval(5(){w.T({A:\'1g\',q:0,n:S});S=(S+1)%1F;w.T({A:\'1h\',q:0,n:S});7(1H){w.T({A:\'showTip\',q:0,n:S})}},1G)}5 dismissChangeRelatedObjectPopup(1I,objId,newRepr,1J){1I.close();console.log(1J);location.reload()}5 clickaction(w,p=\'\'){4 1K=`1L q${p}=-1;1L n${p}=-1;w.on(\'click\',5(E){w.T({A:\'1g\',q:q${p},n:n${p}});4 1i=\'1h\';7(q${p}===E.1j&&n${p}===E.n){q${p}=-1;n${p}=-1;1i=\'1g\'}F{q${p}=E.1j;n${p}=E.n}w.T({A:1i,q:E.1j,n:E.n})});w.on(\'mouseout\',5(E){7(q${p}>-1){w.T({A:"1h",q:q${p},n:n${p}})}});`;eval(1K)}',[],110,'||||let|function|return|if|length|data|||||dataset|arr|for|push||||num||dataIndex|result|seq|seriesIndex|concat||seted|slice|flag|myChart|obj||can|type|true|span|withhead|params|else|cans|param|val2|false|style|c1|c2|tmp|blank|hh|mm|ss|currentIndex|dispatchAction|document|clientWidth|body|map|t1|tmpmap|str|colorUp|colorDown|color|glyphicon|val|const||sep|head_add|split|start_row|obj1|obj2|ds_leftjoin|forEach|downplay|highlight|acttype|componentIndex|lst_contains|while|remove_list|res|documentElement|fontSize|width|height|Math|green|red|class|arrow|getUndefined|defaultValue|qty|name|filter_param|Mytime|this|datetime|dataLen|interval|showtip|win|newId|actionstr|var'.split('|'),0,{}))
|
@ -1,10 +1,11 @@
|
|||||||
<html><head><title>smartchart:{{title}}</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><meta http-equiv="X-UA-Compatible" content="IE=edge">{% block head %}{% endblock %}{{contentrefresh|safe}}<style type="text/css">
|
<html><head><title>smartchart:{{title}}</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><meta http-equiv="X-UA-Compatible" content="IE=edge">{% block head %}{% endblock %}{{contentrefresh|safe}}<style type="text/css">
|
||||||
.table th, .table td {
|
.table th, .table td {text-align: center;}
|
||||||
text-align: center;
|
.table {font-size:10px;}
|
||||||
}
|
.devspan {position:fixed;z-index:99999;}
|
||||||
.table {
|
.devspan:hover a, .devhead:hover select, .devhead:hover a {display: initial;}
|
||||||
font-size:10px;
|
.devspan a, .devhead select, .devhead a, .hidden {display: none}
|
||||||
}
|
.devhead {background:white;position:fixed;z-index:99998;}
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
::-webkit-scrollbar {
|
||||||
width: 0.25rem;
|
width: 0.25rem;
|
||||||
height: 0.25rem;
|
height: 0.25rem;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user