Anystock 不适用于 Anychart-NodeJS

如何解决Anystock 不适用于 Anychart-NodeJS

我正在设置一个 node.js 服务器,它使用 Anychart 呈现静态 jpg/png 图像。

我可以返回示例中的简单示例饼图,但是当我尝试返回 AnyStock 的示例时,我得到了一些奇怪的结果。

该代码应在以下网址上创建并返回股票图表:xx.xxx.xxx.xx:3000/insert。 相反,代码返回此图表,没有任何图形或烛台:

The result from node.js

当我在纯 html 站点上设置相同的图表时,我得到以下结果:

The result on web page

node.js 代码:

var fs = require('fs');
var express = require('express');
var app = express();
var path = require('path');
var router = express.Router();


app.get('/',function(req,res) {

    var query = require('url').parse(req.url,true).query;

    var stock_id = query.stock_id;
    var type = query.type;

    if (type == "insert") {

        var JSDOM = require('jsdom').JSDOM;
        var jsdom = new JSDOM('<head><script src="https://cdn.anychart.com/releases/8.9.0/js/anychart-core.min.js" type="text/javascript"></script><script src="https://cdn.anychart.com/releases/8.9.0/js/anychart-stock.min.js" type="text/javascript"></script></head><body><div id="container" style="width: 500px; height: 400px;"></div></body>',{
            runScripts: 'dangerously'
        });

        var window = jsdom.window;
        var anychart = require('anychart')(window);
        var anychartExport = require('anychart-nodejs')(anychart);


        var table,mapping,chart;

        table = anychart.data.table();
        table.addData([
            ['2015-12-24',511.53,514.98,505.79,506.40],['2015-12-25',512.53,514.88,505.69,507.34],['2015-12-26',511.83,505.59,506.23],['2015-12-27',511.22,515.30,505.49,506.47],['2015-12-28',510.35,515.72,505.23,505.80],['2015-12-29',510.53,515.86,505.38,508.25],['2015-12-30',511.43,515.98,505.66,507.45],['2015-12-31',511.50,515.33,505.99,507.98],['2016-01-01',511.32,514.29,506.37],['2016-01-02',511.70,514.87,506.18,506.75],['2016-01-03',512.30,514.78,505.87,508.67],['2016-01-04',512.50,514.77,505.83,508.35],['2016-01-05',516.18,505.91,509.42],['2016-01-06',511.13,516.01,506.00,509.26],['2016-01-07',510.93,516.07,510.99],['2016-01-08',510.88,515.93,505.22,509.95],['2016-01-09',509.12,515.97,505.15,510.12],['2016-01-10',508.53,516.13,510.42],['2016-01-11',508.90,516.24,505.73,510.40]
        ]);

        mapping = table.mapAs();
        mapping.addField('open',1,'first');
        mapping.addField('high',2,'max');
        mapping.addField('low',3,'min');
        mapping.addField('close',4,'last');
        mapping.addField('value','last');

        chart = anychart.stock();
        chart.plot(0).ohlc(mapping).name('ACME Corp.');
        chart.title('AnyStock Basic Sample');
        chart.container('container');
        chart.draw();

        anychartExport.exportTo(chart,'jpg').then(function(image) {
            fs.writeFile('anychart.jpg',image,function(fsWriteError) {
                if (fsWriteError) {
                    console.log(fsWriteError);
                } else {
                    res.sendFile(path.join(__dirname + '/anychart.jpg'));

                }
            });
        },function(generationError) {
            console.log(generationError);

        });
    } else if (type == "image") {
        res.sendFile(path.join(__dirname + '/anychart.jpg'));
    }
});

app.listen(3000);

我怀疑我在 jsdom 中包含 JS 文件的方式有问题。如果我在 jsdom 中排除这两个文件,我会得到相同的结果..

如果您有任何建议,请告诉我。

解决方法

您能检查并分享浏览器控制台消息吗?这往往是第一个故障排除步骤 :)

,

因此,经过几天的等待时间,AnyChart 支持人员回复了我对上述问题的以下答复:

我们无法保证此模块会按预期工作。这取决于 在许多其他无法提供稳定版本的库中 不同的操作系统。

相反,他们建议使用与我所寻找的不同的 Export Server 解决方案。

我们的设置是建立在 LAMP 服务器上的,所以我们不想为了每天只为几张图片而运行另一台服务器。

如果你们中的任何人对我可以将 AnyStock 图表导出为 JPG、PNG 或 GIF 的解决方案有任何建议,请告诉我。

谢谢:-)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -&gt; systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping(&quot;/hires&quot;) public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate&lt;String
使用vite构建项目报错 C:\Users\ychen\work&gt;npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-
参考1 参考2 解决方案 # 点击安装源 协议选择 http:// 路径填写 mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os URL类型 软件库URL 其他路径 # 版本 7 mirrors.aliyun.com/centos/7/os/x86
报错1 [root@slave1 data_mocker]# kafka-console-consumer.sh --bootstrap-server slave1:9092 --topic topic_db [2023-12-19 18:31:12,770] WARN [Consumer clie
错误1 # 重写数据 hive (edu)&gt; insert overwrite table dwd_trade_cart_add_inc &gt; select data.id, &gt; data.user_id, &gt; data.course_id, &gt; date_format(
错误1 hive (edu)&gt; insert into huanhuan values(1,&#39;haoge&#39;); Query ID = root_20240110071417_fe1517ad-3607-41f4-bdcf-d00b98ac443e Total jobs = 1
报错1:执行到如下就不执行了,没有显示Successfully registered new MBean. [root@slave1 bin]# /usr/local/software/flume-1.9.0/bin/flume-ng agent -n a1 -c /usr/local/softwa
虚拟及没有启动任何服务器查看jps会显示jps,如果没有显示任何东西 [root@slave2 ~]# jps 9647 Jps 解决方案 # 进入/tmp查看 [root@slave1 dfs]# cd /tmp [root@slave1 tmp]# ll 总用量 48 drwxr-xr-x. 2
报错1 hive&gt; show databases; OK Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object Time taken: 0.474 se
报错1 [root@localhost ~]# vim -bash: vim: 未找到命令 安装vim yum -y install vim* # 查看是否安装成功 [root@hadoop01 hadoop]# rpm -qa |grep vim vim-X11-7.4.629-8.el7_9.x
修改hadoop配置 vi /usr/local/software/hadoop-2.9.2/etc/hadoop/yarn-site.xml # 添加如下 &lt;configuration&gt; &lt;property&gt; &lt;name&gt;yarn.nodemanager.res