Django のハイチャート: Web ページ上にグラフの代わりに JSON データを表示する
P粉310931198
P粉310931198 2024-04-02 10:06:09
0
1
466

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

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

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

リーリー

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

リーリー

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

リーリー

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

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

P粉310931198
P粉310931198

全員に返信(1)
P粉420958692

私は @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 ツールキット パッケージ作成者のファンです。 p> それまでの間、この回答が問題の診断/解決に役立つことを願っています。詳細を共有していただければ、より正確な診断/提案でこの回答を喜んで改訂します。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート