Amcharts 5 пытается изменить тег src, чтобы загрузить другой набор данных для биржевой диаграммы

Я разбил данные 15-минутных свечей за более чем 10 лет на отдельные годы, чтобы они загружались быстрее. Я относительно новичок в программировании и модифицирую одну из потрясающих демонстраций amcharts, чтобы посмотреть, смогу ли я заставить ее работать, и столкнулся с проблемой. Я считаю, что я близок, поскольку вижу загрузку нового файла данных в консоли и источниках, но я не понимаю, что необходимо, чтобы заставить диаграмму загрузить новый файл данных. Файлы данных называются «2023_day.js» и т. д.

В частности, я пытаюсь изменить путь к источнику сценария для загрузки другого файла данных, и я не уверен, как передать имя файла данных в функцию index.js loadData.

      // Function that dynamically loadsdata in index.js
function loadData(ticker, series, granularity) {
    var data = (window)["2023" + "_" + granularity];
    am5.array.each(series, function(item) {
        item.data.setAll(data);
    });
}

index.html выглядит следующим образом

      <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>GBPJPY Chart</title>
<link rel="stylesheet" href="index.css" />
</head>
<body>
<div id="chartcontrols" style="padding-left:15px"></div>
<div id="chartdiv"></div>
<script src="../index.js"></script>
<script src="../xy.js"></script>
<script src="../stock.js"></script>
<script src="../themes/Animated.js"></script>

<!--<script src="./data/2023_day.js"></script>-->

<select onChange="changeYear(this.value);">
    <option value="-">Select Study Year</option>
    <option value="2023">2023</option>
    <option value="2022">2022</option>
    <option value="2021">2021</option>
    <option value="2020">2020</option>
    <option value="2019">2019</option>
    <option value="2018">2018</option>
    <option value="2017">2017</option>
    <option value="2016">2016</option>
    <option value="2015">2015</option>
    <option value="2014">2014</option>
    <option value="2013">2013</option>  
</select>

<div id="output">
<script id="year" type="text/javascript" src="./data/2023_day.js"></script>
</div>

<script type="text/javascript">
function changeYear(value) {
    console.log(value);
    var s = document.createElement("script");
    s.type = "text/javascript";
    s.src = "./data/"+value+"_day.js";
    s.innerHTML = null;
    s.id = "year";
    document.getElementById("output").innerHTML = "";
    document.getElementById("output").appendChild(s);
    console.log(s.src);
}
</script>

<script src="index.js"></script>

<div id="chartdiv"></div>   

</body>
</html>

файлы данных форматируются как

      window["2019_day"] = [
  {Date:1546318800000,Open:139.82,High:139.82,Low:139.82,Close:139.82,Volume:3},
  {Date:1546319700000,Open:139.82,High:139.82,Low:139.82,Close:139.82,Volume:3},
  {Date:1546320600000,Open:139.82,High:139.82,Low:139.82,Close:139.82,Volume:3},
  {Date:1546321500000,Open:139.82,High:139.82,Low:139.82,Close:139.82,Volume:3},
  {Date:1546322400000,Open:139.89,High:139.89,Low:139.83,Close:139.83,Volume:3},
]

и называются по тому же соглашению (т. е. 2019_day.js). Я могу обратиться к любому отдельному файлу данных и правильно загрузить диаграмму.

Любая помощь приветствуется.

0 ответов

Другие вопросы по тегам