diff --git a/ChartResource/readme b/ChartResource/readme deleted file mode 100644 index 831f651..0000000 --- a/ChartResource/readme +++ /dev/null @@ -1,2 +0,0 @@ -For more charts, visit https://www.smartchart.cn/echart/show/ -try to pull your charts, welcome! \ No newline at end of file diff --git a/ChartResource/仪表盘.js b/ChartResource/仪表盘.js deleted file mode 100644 index 578f688..0000000 --- a/ChartResource/仪表盘.js +++ /dev/null @@ -1,74 +0,0 @@ -//select 指标名,达成,目标 - -var dataset = __dataset__; //传入dataset - -option__name__= { - // backgroundColor: '#1b1b1b', - title: [{ - x: "center", - // y: "70%", - //bottom: 100, - text: dataset[1][0], - textStyle: { - // fontWeight: 'normal', - // fontSize: 20, - // color: "#fff" - }, - }], - series : [ - { - name:'速度', - type:'gauge', - min:0, - max:100, - // center: ['60%', '50%'], // 默认全局居中 - //splitNumber:11, - // radius: '80%', - axisLine: { // 坐标轴线 - lineStyle: { // 属性lineStyle控制线条样式 - // color: [[0.5, '#ff4500'],[0.9, '#4EE3FF'],[1, 'lime']], - // width: 5, - // shadowColor : '#fff', //默认透明 - // shadowBlur: 10 - } - }, - axisLabel: { // 坐标轴小标记 - textStyle: { // 属性lineStyle控制线条样式 - fontWeight: 'bolder', - // color: '#fff', - //shadowColor : '#fff', //默认透明 - // shadowBlur: 10 - } - }, - axisTick: { // 坐标轴小标记 - // length :15, // 属性length控制线长 - lineStyle: { // 属性lineStyle控制线条样式 - color: 'auto', - // width:3, - //shadowColor : '#fff', //默认透明 - shadowBlur: 10 - } - }, - splitLine:{//橙色分割线 - length:25, - lineStyle:{ - width:3, - // color:'#FCD209', - } - }, - itemStyle:{//指针颜色 - // color:'#1e90ff', - }, - pointer:{//指针长短 - // length:110 - }, - detail: { - formatter:dataset[1][1]+'\n{value}%', - }, - data:[{value: (dataset[1][1]/dataset[1][2]*100).toFixed(0)}] - } - ] -}; - - -charts.push(myChart__name__); \ No newline at end of file diff --git a/ChartResource/分省地图.js b/ChartResource/分省地图.js deleted file mode 100644 index cd90d22..0000000 --- a/ChartResource/分省地图.js +++ /dev/null @@ -1,70 +0,0 @@ -//select cityname as title, value - -//设置值范围 -let minvalue=0; -let maxvalue=6000; - -let dataset = __dataset__; //传入dataset - -let title = dataset[0][0]; -let series=[]; -for (let i=1;i0){ -series.push({name:'河北',value:houbei}) -} - - -option__name__ = { -//backgroundColor: '#6a7db5', - title: { - //text: '全国地图', - //subtext: '纯属虚构', - //x:'center' - }, - tooltip : { - trigger: 'item' - }, - dataRange: { - min : minvalue, - max : maxvalue, - calculable : true, - //orient : horizontal, - // color: ['#ff3333', 'orange', 'yellow','lime','aqua'], - textStyle:{ - // color:'#fff' - } }, - - series: [ - { - name: title, - type: 'map', - mapType: 'china', - roam: false, - label: { - normal: { - show: true - }, - emphasis: { - show: false - } - }, - data:series - } - ] - }; -charts.push(myChart__name__); \ No newline at end of file diff --git a/ChartResource/双轴柱形图.js b/ChartResource/双轴柱形图.js deleted file mode 100644 index 8cdf022..0000000 --- a/ChartResource/双轴柱形图.js +++ /dev/null @@ -1,64 +0,0 @@ -//select 维度,指标1, 指标2, 指标3 - -let dataset = __dataset__; //传入dataset -dataset = ds_transform(dataset) //可选, 当需要行列互转时 -let legend_label = ds_rowname(dataset) //可选, 自动获取legend -let xlabel = dataset[0].splice(1) //x轴的标签列 -dataset = ds_createMap(dataset) //转化成KV格式 - -option__name__ = { - title: { - text: '', - left: 'center' - }, //定义标题的显示 - tooltip: { - trigger: 'item', - formatter: '{a}
{b} : {c}' //鼠标移动提示的格式 - }, - legend: { - left: 'center', - data: legend_label - }, //定义图例的显示 - xAxis: { - type: 'category', - data: xlabel - }, //定义X轴的显示 - yAxis: [{ - type: 'value', - name:'AAA', - position:'left', - axisLabel:{ - formatter:function (value, index) { - return value/10000 + '万'; -}} - },{ - type: 'value', - name:'差异', - position : 'right', - - }], - //图例定义 - series: [{ - name: legend_label[0], - data: dataset[legend_label[0]], - type: 'bar' - }, - { - name: legend_label[1], - data: dataset[legend_label[1]], - type: 'bar' - },{ - name: legend_label[2], - data: dataset[legend_label[2]], - type: 'line', - yAxisIndex:1, - label:{ - show:true, - formatter:function(param) { - if (param.value==0) {return '';} else - {return param.value;} - } - }} -] -}; -charts.push(myChart__name__); \ No newline at end of file diff --git a/ChartResource/堆叠条形图.js b/ChartResource/堆叠条形图.js deleted file mode 100644 index 37020e4..0000000 --- a/ChartResource/堆叠条形图.js +++ /dev/null @@ -1,47 +0,0 @@ -//select 维度,维度,值 -let dataset = __dataset__; -let s = { - type: 'bar', - stack: '总量', - label: { - normal: { - show: true, - position: 'insideRight', -formatter: function (params) { - if (params.value[params.seriesIndex+1] > 0) { - return params.value[params.seriesIndex+1]; - } else { - return ''; - } - }, - } - }, - }; -let series =[]; -for (let i=1;i{b} : {c}', - //formatter: function(param) { console.log(param);return param[0].value}, - //formatter: '{b}
{a0}: {c0}
{a1}: {c1}
{a2}: {c2}%', - //折线(区域)图、柱状(条形)图、K线图 : {a}(系列名称),{b}(类目值),{c}(数值), {d}(无) - //散点图(气泡)图 : {a}(系列名称),{b}(数据名称),{c}(数值数组), {d}(无) - //地图 : {a}(系列名称),{b}(区域名称),{c}(合并数值), {d}(无) - //饼图、仪表盘、漏斗图: {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比) - - //坐标轴指示器,坐标轴触发有效 - axisPointer: { - type: "shadow",// 默认为直线,可选为:'line' | 'shadow' - label: { - show: true, - } - }, -}, -//图例,每个图表最多仅有一个图例 -legend: { - show: true, - //水平安放位置,默认为全图居中,可选为:center|left|right|{number}(x坐标,单位px) - x: "center", - //垂直安放位置,默认为全图顶端,可选为top|bottom|center|{number}(y坐标,单位px) - y: "top", - //legend的data: 用于设置图例,data内的字符串数组需要与sereis数组内每一个series的name值对应 - data: ['销量', '人员'], - //字体格式 - textStyle: { - align: 'center', - color: '#fff', - fontSize: 20, - }, - //图标样式'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' - icon: "diamond", - //选择模式,默认开启图例选择,false 关闭,设成 'single' 或者 'multiple'使用单选或者多选模式 - selectedMode:true, - //选中状态 - selected: { - // 选中'系列1' - '销量': true, - // 不选中'系列2' - '人员': false - }, -}, - -//x轴,横坐标 -xAxis: { - //x轴的标签 - data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"], - //显示策略,可选为:true(显示) | false(隐藏),默认值为true - show: true, - type: 'category',//坐标轴类型,横轴默认为类目型’category’ - - //x轴的标签格式 - axisLabel: { - show: true, - textStyle: { - color: "#ebf8ac", //X轴文字颜色 - }, - //formatter: function(name) { return name;}, - }, - //x轴的轴线格式 - axisLine: { - show: true, //是否隐藏X轴轴线 - lineStyle: { - color: '#01FCE3', - } - }, - //x轴的刻度格式 - axisTick: { - show: true, //是否隐藏X轴刻度 - }, -}, - -//纵坐标 - -yAxis: { - show: true, - //坐标轴类型,纵轴默认为数值型’value’ - type: 'value', - //分隔区域,默认不显示 - splitArea: { show: true, }, - //分隔线 - splitLine: { show: true, }, - //指定刻度范围 - min: 0, - max: 50, - interval:10, - splitNumber: 8, //坐标轴的分割段数预估 - //标签轴线等与x轴的方法一致 - -}, -/* //多坐标的写法 - -yAxis:[{ - type: 'value', - name:'AAA', - position:'left', - axisLabel:{ - //坐标文字 - textStyle: { - color: function (value, index) { - return value >= 90 ? 'green' : 'red'; - } - }, - formatter:function (value, index) { - return value/10000 + '万'; - }, - } - }, - { - type: 'value', - name:'差异', - position : 'right', - }, - - ], - -*/ - -//系列 -series: [ - { - name: '销量', - type: 'bar', - //barWidth: 15,//宽度 - barGap:'30%', //间距 - data: [5, 20, 36, 10, 10, 20], - label: { - show: true, //是否显示数值 - //position: [10, 10], //位置绝对的像素值 - position: ['50%', '50%'], //相对的百分比,'top','bottom','inside' - rotate:-36, //角度 - formatter: '{b}:{c}' //自定义数据 - - }, - //显示样式 - itemStyle: { - color: "#058cff", - //渐变色设定 - normal: { - color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ - offset: 0, - color: "#00FFE3" - }, - { - offset: 1, - color: "#4693EC" - } - ]) - }, - - }, - - //系列外框线格式 - lineStyle: { - color: "#058cff" - }, - //系列填充格式 - areaStyle:{ - color: "rgba(5,140,255, 0.2)" - }, - - //折线设定,所有标记样式如下 - //'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' - smooth: true, //平滑曲线显示 - showAllSymbol: true, //显示所有图形。 - symbol: "circle", //标记的图形为实心圆 - symbolSize: 10, //标记的大小 - - //标记点 - markPoint : { - data : [ - {type : 'max', name: '最大值'}, - {type : 'min', name: '最小值'}, - {name: '坐标',coord: [10, 20]}, - {name: '屏幕坐标',x:100,y:200}, - ], - //标记 - symbol:'pin', - symbolSize:50, - symbolRotate:-30, - //通用格式如上的label - label:{ - show:true, - }, - }, - - //标记线 - markLine : { - data : [ - {type : 'average', name: '平均值'}, - {name : '1000', yAxis : 24}, - ] - }, - - }, - /* //高级series设定的方法 - { - name: legend_label[2], - data: dataset[legend_label[2]], - type: 'line', - yAxisIndex:1, //所在坐标轴,0为默认 - label:{ - show:true, - formatter:function(param) { - if (param.value===0) {return '';} else - {return param.value;} - } - } - }, - - */ - - - -], - - - -//直角坐标系内绘图网格 - grid: { - left: '3%', - right: '4%', - bottom: '10%', - top: '15%', - containLabel: true //false防止标签溢出容器 - }, - -/* -//视觉映射组件 -visualMap: { - min: 0, - max: 100, - // 两个手柄对应的数值是 4 和 15 - range: [4, 100], - calculable:true, //是否显示手柄 - itemWidth:20, - itemHeight:140, - text:['最大值','最小值'], - //dimension:1, //指定用数据哪个维度,映射到视觉元素上 - seriesIndex:0, //指用那个系列 - hoverLink:true, //鼠标位置对应的数值图表中对应的图形元素高亮 - // 表示目标系列的视觉样式 和 visualMap-continuous 共有的视觉样式。 - inRange: { - color: ['#121122', 'rgba(3,4,5,0.4)', 'red'], - symbolSize: [4, 100] - }, - // 表示 visualMap-continuous本身的视觉样式,会覆盖共有的视觉样式。 - // 比如,symbolSize 覆盖成为 [30, 100],而 color 不变。 - controller: { - inRange: { - symbolSize: [30, 100] - } - } - -}, - -*/ - - -//工具栏 -toolbox: { - //显示策略,可选为:true(显示) | false(隐藏),默认值为false - show: true, - //工具箱自定义功能回调处理 - feature: { - //辅助线标志 - mark: { show: true }, - //dataZoom,框选区域缩放,自动与存在的dataZoom控件同步,分别是启用,缩放后退 - dataZoom: { - show: true, - title: { - dataZoom: "区域缩放", - dataZoomReset: "区域缩放后退" - } - }, - //数据视图,可设置更多属性,readOnly 默认数据视图为只读(即值为true),可指定readOnly为false打开编辑功能 - dataView: { show: true, readOnly: true }, - //magicType,动态类型切换,支持直角系下的折线图、柱状图、堆积、平铺转换 - magicType: { show: true, type: ["line", "bar"] }, - //restore,还原,复位原始图表 - restore: { show: true }, - //saveAsImage,保存图片(IE8-不支持),图片类型默认为’png’ - saveAsImage: { show: true } - } -}, -}; - -charts.push(myChart__name__); \ No newline at end of file diff --git a/ChartResource/柱形图.js b/ChartResource/柱形图.js deleted file mode 100644 index a8e82ba..0000000 --- a/ChartResource/柱形图.js +++ /dev/null @@ -1,21 +0,0 @@ -//select 维度,维度,值 - -var series =[]; -var dataset = __dataset__; -for (var i=1;i 1) { - for (var i = 0; i < hang; i++) { - var start = i * max; - var end = start + max; - var temp = value.substring(start, end) + "\n"; - last += temp; //凭借最终的字符串 - } - return last; - } else { - return value; - } - } - }, - data: ["维度"] - }, - tooltip: { - trigger: "axis", - formatter: function(params) { - var res = ""; - var name = ""; - var start0 = ""; - var start = ""; - var end0 = ""; - var end = ""; - for (var i in params) { - var k = i % 2; - if (!k) { //偶数 - start0 = params[i].data; - console.log(start0); - // start = start0.getFullYear() + "-" + (start0.getMonth() + 1) + "-" + start0.getDate(); - start = start0.getHours() + ":" + start0.getMinutes() + ":" + start0.getSeconds(); - } - if (k) { //奇数 - name = params[i].seriesName; - end0 = params[i].data; - //end = end0.getFullYear() + "-" + (end0.getMonth() + 1) + "-" + end0.getDate(); - end = end0.getHours() + ":" + end0.getMinutes() + ":" + end0.getSeconds(); - res += name + " : " + end + "~" + start + "
"; - - } - } - return res; - } - }, - series: series -} -charts.push(myChart__name__); - diff --git a/ChartResource/线性图.js b/ChartResource/线性图.js deleted file mode 100644 index 2cd7f96..0000000 --- a/ChartResource/线性图.js +++ /dev/null @@ -1,22 +0,0 @@ -//select 维度,维度,值 - -var series =[]; -var dataset = __dataset__; -for (var i=1;i,"error","warning","info" -//头部, 不需要可以去掉 -table += ""; -for(var j=0; j" + data[0][j] + ""; -}; -table += ""; - -//表主体, 如果有头部, 把0改为1 -table += ""; - for(var i=1;i" + data[i][j] + ""; - }; - table += ""; - }; - table += ""; - -dom__name__.innerHTML=table; \ No newline at end of file diff --git a/ChartResource/透视表.js b/ChartResource/透视表.js deleted file mode 100644 index f5e7b83..0000000 --- a/ChartResource/透视表.js +++ /dev/null @@ -1,41 +0,0 @@ -//select 维度A,维度B,.....,数值 -let dataset=__dataset__; -//dataset = [['color','shape','qty','SS'],['blue','circle',1,2],['red','triangle',2,3]] - -let rows = ['城市'] -let cols = [''] -let derivers = $.pivotUtilities.derivers; -let sum = $.pivotUtilities.aggregatorTemplates.sum;// 获取sum操作函数 -let numberFormat = $.pivotUtilities.numberFormat;// 获取数字格式化类 -let renderers = $.extend($.pivotUtilities.renderers, - $.pivotUtilities.plotly_renderers, - $.pivotUtilities.export_renderers); -let intFormat = numberFormat({digitsAfterDecimal: 2}); // 对输入的数据进行格式转换 -let pivotOption = { - renderers:renderers, - rows: rows, - cols: cols, - vals:['销售价'], - aggregator: sum(intFormat)(["销售价"]),// 使用聚合函数指定聚合列名, - rendererOptions:{table:{rowTotals: true,colTotals:false}}// 指定行列是否聚合汇总 - }; -pivotOption.showUI=true; - - -$(function() { -//pivot隐藏拖拽,pivotUI显示 -$(dom__name__).pivotUI(dataset, pivotOption,true); - }); - -//需要切换功能时,在你的DIV中加一个id=pivotbutton的元素 -$('#pivotbutton').click(function(){ - let pivotOption = $(dom__name__).data("pivotUIOptions"); - pivotOption.showUI = ! pivotOption.showUI; - $(dom__name__).pivotUI(dataset, pivotOption,true); -}) - -//需要下载功能时,加一个id=tbdownbutton的元素,container改成对应的编号 -$('#tbdownbutton').click(function(){ - let defaultOptions = "file"+ new Date().getTime(); - new Table2Excel().export($('#container___name__ > table > tbody > tr:nth-child(3) > td.pvtRendererArea > table'),defaultOptions); - }); \ No newline at end of file diff --git a/ChartResource/饼图.js b/ChartResource/饼图.js deleted file mode 100644 index 4bd8d8c..0000000 --- a/ChartResource/饼图.js +++ /dev/null @@ -1,78 +0,0 @@ -//select 指标名, 值 - -var dataset = __dataset__; //传入dataset -legend_label = ds_rowname(dataset) //可选, 自动获取legend -var series =[]; -for (var i=1;i{c} ({d}%)" - }, - - visualMap: { - show: false, - min: 80, - max: 600, - inRange: { - // colorLightness: [0, 1] - } - }, - series : [ - { - name:dataset[0][1], - type:'pie', - radius : '55%', - center: ['50%', '50%'], - roseType: 'radius', - label: { - normal: { - textStyle: { - // color: 'rgba(255, 255, 255, 0.3)' - } - } - }, - labelLine: { - normal: { - lineStyle: { - // color: 'rgba(255, 255, 255, 0.3)' - }, - smooth: 0.2, - length: 10, - length2: 20 - } - }, - itemStyle: { - normal: { - // color: '#8B2500', - // shadowBlur: 200, - // shadowColor: 'rgba(0, 0, 0, 0.5)' - } - }, - - animationType: 'scale', - animationEasing: 'elasticOut', - animationDelay: function (idx) { - return Math.random() * 200; - }, - data: series - } - ] -}; -charts.push(myChart__name__); - -//动态播放 -startSelectAnimate(myChart__name__,legend_label.length,1000,1); \ No newline at end of file diff --git a/CsharpInterface/readme b/CsharpInterface/readme deleted file mode 100644 index c84a9be..0000000 --- a/CsharpInterface/readme +++ /dev/null @@ -1 +0,0 @@ -application in c# language \ No newline at end of file diff --git a/GoInterface/readme b/GoInterface/readme deleted file mode 100644 index aefb296..0000000 --- a/GoInterface/readme +++ /dev/null @@ -1 +0,0 @@ -application in go language \ No newline at end of file diff --git a/JavaInterface/readme b/JavaInterface/readme deleted file mode 100644 index aa47088..0000000 --- a/JavaInterface/readme +++ /dev/null @@ -1 +0,0 @@ -application in java language \ No newline at end of file diff --git a/PHPInterface/readme b/PHPInterface/readme deleted file mode 100644 index cf807f1..0000000 --- a/PHPInterface/readme +++ /dev/null @@ -1 +0,0 @@ -application in php language \ No newline at end of file diff --git a/PythonInterface/readme b/PythonInterface/readme deleted file mode 100644 index 6640274..0000000 --- a/PythonInterface/readme +++ /dev/null @@ -1 +0,0 @@ -application in python language \ No newline at end of file diff --git a/README-EN.md b/README-EN.md index 65175cb..b5bc8af 100644 --- a/README-EN.md +++ b/README-EN.md @@ -1 +1,27 @@ -TBW \ No newline at end of file +[Wiki](https://gitee.com/smartchart/django_smartchart/wikis/pages) \| +[Community](https://www.smartchart.cn/) \| +[Sponsors](https://www.smartchart.cn/) \| +[GitHub](https://github.com/JohnYan2017/Echarts-Django) \| +[Gitee](https://gitee.com/smartchart/django_smartchart) + +

+ +

+

+ A platform that Connect Data to Echarts. +

+

+ https://www.smartchart.cn +

+ +

+ + + + fork + star + + github star + + +

\ No newline at end of file diff --git a/README.md b/README.md index fd276d4..9ca3dd8 100644 --- a/README.md +++ b/README.md @@ -58,8 +58,14 @@ 2. 命令行安装: pip3 install smartchart pip3 install smartchart -U (升级) + 安装慢建意使用 + pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple smartchart + +# 初始化方法 +Window系统中以下命令的 smartchart xxx 使用 smartchart.py xxx 代替 +注意: 如果你是Windows系统且安装过pycharm, 你可能需要随意新建一个xx.py的文件, + 右键选择打开方式, 改成永久使用python来关联打开 -# Mac or Linux 初始化方法 3. 初始化DB, 命令行输入 smartchart makemigrations smartchart migrate @@ -69,26 +75,9 @@ smartchart 如果你需要远程访问,启动方式: smartchart runserver 0.0.0.0:8000 --insecure -6. 访问http://127.0.0.1:8000/echart/init_db/ 进行数据初始化 - -# Window 初始化方法 -3. 初始化DB, 你需要找到你的python安装地址,不记得了参考下图方法 - 如C:\Users\xxx\AppData\Local\Programs\Python\Python39 - 命令行输入 - cd C:\Users\....\Python39\Scripts\ - python smartchart makemigrations - python smartchart migrate -4. 建立管理员帐号, 如果已有可忽略 - python smartchart createsuperuser -5. 本地命令行启动: - python smartchart - 如果你需要远程访问 - 启动方式: - python smartchart runserver 0.0.0.0:8000 --insecure -6. 访问http://127.0.0.1:8000/echart/init_db/ 进行数据初始化 ``` -**访问首页http://127.0.0.1:8000** +**访问首页http://127.0.0.1:8000, 点击首页右上方的云图标初始化数据** **开发前建意新建一个非超级管理员帐号(重要),避免改到内置的数据集和图形** @@ -117,17 +106,18 @@ url: 登录成功后跳转链接 #### 如果你是python开发者,可以在django项目中当作apps使用 最简单的方法(推荐!!!!) +```shell script 请直接下载gitee/github的项目后 pip install smartchart 启动方式 python manage.py runserver 帐号: admin/amdin - +``` 如果你动手能力强 ```shell script pip install smartchart 简单配置一下, 你可以参考此demo -资源文件你需要下载gitee/github上的(注意template的setting) +资源文件你需要下载gitee/github上的(注意template的setting你要修改成一样) 1. 在你的setting.py的INSTALL_APPS中加入'smart_chart.echart' 2. MIDDLEWARE 中注释掉XFrameOptionsMiddleware 3. setting.py中设定为中国时区, 支持中文基础平台建设! @@ -149,9 +139,8 @@ pip install smartchart python manage.py createsuperuser 8. 启动服务 python manage.py runserver - -9. 访问http://127.0.0.1:8000/echart/init_db/ 进行数据初始化 ``` +**访问首页http://127.0.0.1:8000, 点击首页右上方的云图标初始化数据** ##### 图形样列参考 - [SmartChart图形样列](https://www.smartchart.cn/echart/show/ "图形样列") diff --git a/PythonInterface/embeded.py b/django_smartchart/embeded.py similarity index 100% rename from PythonInterface/embeded.py rename to django_smartchart/embeded.py diff --git a/django_smartchart/settings.py b/django_smartchart/settings.py index bd1d251..f230e3b 100644 --- a/django_smartchart/settings.py +++ b/django_smartchart/settings.py @@ -53,6 +53,7 @@ MIDDLEWARE = [ ROOT_URLCONF = 'django_smartchart.urls' +# 请参考此处的template设定 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', diff --git a/requirements.txt b/requirements.txt index f51f072..04dbb87 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1 @@ -smartchart -requests \ No newline at end of file +smartchart \ No newline at end of file