検索

ホームページ  >  に質問  >  本文

Django のハイチャート: Web ページ上にグラフの代わりに JSON データを表示する

そこで、Django の Highcharts を使用してローソク足チャートを作成しようとしましたが、Web ページにチャートを表示できず、代わりに取得したデータの JSON リストが表示されました。

iexcloud の API を使用して履歴データを取得しています

これが私のロジックです: View.py ファイル:

リーリー

私のテンプレート、つまりcandlestick_chart.html

リーリー

および私の URL パス (必要な場合):

リーリー

これは Web ページで得られる出力です ローカルホスト Web イメージ

console.log ステートメントをコードに入れてみたり、ターミナルでデータを出力してみたりしました。すべて正常に動作しましたが、すべて正常に動作しているのに、なぜグラフが Web ページに表示されないのか理解できません。

P粉310931198P粉310931198230日前407

全員に返信(1)返信します

  • P粉420958692

    P粉4209586922024-04-03 00:20:33

    私は @kikon の提案に賛成します。a) 生成されているローカルホスト ページの実際のソース コードを確認し、b) コンソール出力を見て JS エラーがスローされているかどうかを確認すると役立ちます。これらを見なければ、ここではあまり役に立たないと思います。

    ただし、 これに関連する可能性があるのは、現在 HTML <body><script/> タグを読み込んでいることです。

    これは、関連する Highcharts モジュールがロードされる前に Highcharts コンストラクター (

    Highcharts.stockChart()) が実行される可能性があることを意味するため、多少アンチパターンです。 #コンソール ##ReferenceError より良いパターンは、

    <head/>

    ブロック内に <script/> タグを組み込み、defer 属性を使用することです。次に、DOMContentLoaded などの DOM 関連イベントで Highcharts コンストラクターをトリガーします (正確なイベントは特定のユースケース/プロセスによって異なる場合があります)。 同じタスクを実行する別のパターンは、スクリプトがロードされるまで再試行 (関連する

    ReferenceError

    をキャッチ) する非同期関数を使用することです。 もちろん、これらは単なる推測です。HTML 出力とコンソール出力を見ずに、ここで何が起こっているのかを正確に判断するのは困難です。

    ちなみに、Highcharts を Django に統合しようとしている場合は、

    Highcharts for Python ツールキット

    もチェックしてみるとよいでしょう。 は、Highcharts の有料プラグインとしてリリースされました (完全な開示、私は、Django ビューの統合の一部を簡素化できる Highcharts for Python ツールキット パッケージ作成者のファンです。 それまでの間、この回答が問題の診断/解決に役立つことを願っています。詳細を共有していただければ、より正確な診断/提案でこの回答を喜んで改訂します。

    返事
    0
  • キャンセル返事