2012-05-06 6 views
4

Django-Chartitを使ってグラフを作成しています。
従うことを試みるthisの例。
私の問題は、私はモデルからではないデータを使用したいということです ので、私は、このコードDjango-Chartit 'source'はQuerySet、ModelまたはManagerのいずれかでなければなりません

data = \ 
    DataPool(
     series= 
     [{'options': { 
      'source': [1,2,3,4,5,6,7,8,9,10]}, 
      'terms': [ 
      'month', 
      'houston_temp', 
      'boston_temp']} 
     ]) 
chart = Chart(
     datasource = data, 
     series_options = 
      [{'options':{ 
       'type': 'line', 
       'stacking': False}, 
      'terms':{ 
       'month': [ 
       'boston_temp', 
       'houston_temp'] 
       }}], 
     chart_options = 
      {'title': {'text': 'Weather Data of Boston and Houston'}, 
      'xAxis': {'title': {'text': 'Month number'} 
        }}) 

を試してみましたが、私はエラーメッセージ

「ソース」のいずれかのクエリセット、モデルでなければならないのですまたはマネージャー。その代わりに[1,2,3,4,5,6,7,8,9,10]のタイプが得られました。

私はリストからQuerySetを作成することはできません。

+0

こんにちは@yossi作るためにこれを行うことができます。この質問に感謝します。現時点では、私はこの考え方の枠内にいるだけです。どのように解決しましたか?ありがとう。 – danihp

+0

代わりにハイチャートのjavascriptを使用し、ページ内のJavaScriptに文字列としてデータを表示しました – yossi

+0

ありがとうございます。私はそれに取り組んでいます。私はそれがエレガントな解決策だとも思っています。また、私にとって、ハイストックはより良い解決策です。よろしく。 – danihp

答えて

4

Django-Chartitは実際にモデルからグラフを作成するためのものです。タグラインに注目してください:

Create charts from your Django models effortlessly 

あなたがモデルを使用することはできません、特定の理由がある場合は、私は別のWebチャートツールsuch as Flotを使用してになります。それは純粋なJavaScriptであるため、グラフを作成するためにクライアント側にデータを送信する必要があります。そのdocstermsから

1

まず第一には、モデル、クエリセットまたは管理者である必要がありますsource上で有効なフィールドのリストや辞書でなければなりません。

どのような種類のデータを使用しますか?

更新:このリストデータソースは正確には何ですか?それは、IDの モデルのを含むリストである場合は、そのクエリセット

MyModel.objects.filter(id__in=[3,1,2,5,77]) 
+0

私は単純なリストを使用したいです – yossi

+1

@yossi私の更新を参照してください。それがあなたに合っていない場合は、Paragonの提案をよく見てください。 – rantanplan

+0

いいえ、idであればリストではありません。モデルとは関係のない単純なリストです。 – yossi

関連する問題