График временных рядов для данных JSON с JavaScript - PullRequest
0 голосов
/ 16 марта 2019

Потребовался месяц, чтобы написать мой текущий рабочий код криптовалюты HTML / JavaScript для моего сайта.Слишком много времени для какой-то болезненной задачи, которая должна была быть намного проще.Я начал с нулевого опыта и знаний, связанных с HTML / JavaScript.Код заполняет раскрывающийся список с именами 100 криптовалют с наибольшей рыночной капитализацией на веб-сайте cryptocompare, затем пользователь выбирает криптовалюту из выпадающего списка и возвращаются соответствующие данные о ценах криптовалюты.

Есть два файла, которые должны находиться в одной папке, чтобы код работал.JavaS.js и HTML.html.Я удалил свой ключ API шифрования из приведенного ниже кода.Любой, кто копирует и вставляет этот код, должен ввести свой собственный ключ API с сайта cryptocompare, чтобы код мог работать.

У меня осталась только одна цель, и это заговор.Я пробовал различные инструменты построения графиков JavaScript, но я не нашел хороший и простой.Может кто-нибудь помочь мне построить эти данные?Все функции построения графиков JavaScript должны находиться внутри JavaS.js.Файл HTML.html должен быть скудным и подлым.

Изображение моего выпадающего списка и отображение данных криптовалюты

Файл номер 1: JavaS.js

function GetData() 
{
var ApiKey = "........" ;
var url = "https://min-api.cryptocompare.com/data/top/mktcapfull?limit=100&tsym=USD&api_key=" + ApiKey; 

$.get(url,callback1) ;
} 

function callback1(WhatToWrite)
{
var x = WhatToWrite;  
var y = x.Data ;
var A = [ ]; 

var select = document.getElementById("MyBox");

for (var i = 0; i < y.length; i++) 
    {
     A.push([y[i].CoinInfo.Name]);
     var el = document.createElement("option");
     el.textContent = y[i].CoinInfo.Name;
     el.value = y[i].CoinInfo.Name;
     select.appendChild(el);
    }
}

function Selection(sel)
{
var ticker = sel.value;  

var ApiKey = "......." ;
var url = "https://min-api.cryptocompare.com/data/histoday?fsym=" + ticker + "&tsym=USD&limit=1000&api_key=" + ApiKey ; 
$.get(url, callback2); 
}

function callback2(WhatToWrite)
{  
var x = WhatToWrite; 
var y = x.Data ;

var D = [ ]; 
var i; 

for (i = 0; i < y.length; i++) 
{
D.push([JSON.stringify(T(y[i].time)), y[i].close]);
} 

document.getElementById("Tag1").innerHTML = "Variable D = " + D;      
}; 

function T(UNIX_timestamp)
{
  var a = new Date(UNIX_timestamp * 1000);
  var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
  var year = a.getFullYear();
  var month = months[a.getMonth()];
  var date = a.getDate();
  var hour = a.getHours();
  var min = a.getMinutes();
  var sec = a.getSeconds();
  var time = date + ' ' + month + ' ' + year ;
  return time;
}

Файл № 2: HTML.html

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="JavaS.js"></script>
<meta charset="utf-8"/>
</head>

<body>

<select id="MyBox" onchange="Selection(this)" > </select>

<p id="Tag1"></p>        

</body>

<script> 

GetData(); 

</script>

</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...