dojox.chartingとデータストアからカスタムラベルを表示します

StackOverflow https://stackoverflow.com/questions/1977170

  •  21-09-2019
  •  | 
  •  

質問

私はdojox.charting.widget.Chart2Dを使用していると私はdojo.data.ItemFileReadStoreからデータを取得しようとしています。私はアイテムの表示カスタムラベルへの道を見つけることができないよう除いて、私は、データ、およびすべての作品やディスプレイを取得することができます。私のHTMLスニペットがあります:

<div dojoType="dojo.data.ItemFileReadStore" jsId="chartDataStore" 
    url="json/archiveinfo.json.php"></div>
<div dojoType="dojox.charting.widget.Chart2D" id="chartTest" 
    theme="dojox.charting.themes.PlotKit.blue" style="width: 300px; height: 300px;">
  <div class="plot" name="default" type="Pie" fontColor="black" htmlLabels="false" 
    radius="100"></div>
  <div class="series" name="Series A" store="chartDataStore" field="y" 
    label="text" valueFn="Number(x)"></div>
  <div class="action" type="Tooltip"></div>
  <div class="action" type="MoveSlice"></div>
</div>

そしてItemFileReadStoreからの私のJSONは、次のとおりです。

{"identifier":"id","labelAttribute":"text","items":
  [
    {"id":1,"y":55,"text":"Free"},
    {"id":2,"y":45,"text":"Used"}
  ]
}

私は、シリーズのラベル属性を設定しようとしたとJSONでlabelAttributeを設定しています。私もJSONでちょうどlabelを試してみましたが、それはどちらか動作しませんでした。私はarrayにJSONなどのデータを提供したり、直列に直接dataを提供する場合、私は仕事へのラベルを取得します。私は実際にデータストアを介してデータを提供することで、しかし、それはより柔軟にしたかっます。

役に立ちましたか?

解決

それを行うための方法は、あなたのJSONにHTMLの属性を対応する少しと更新を変更することです。

JSONます:

{
  "items": [
    {"id":1, "slice": {"y":55,"text":"Free"}},
    {"id":2, "slice": {"y":45,"text":"Used"}}
  ]
}

のみ意味のある変化は、簡単のため、サブオブジェクト(slice)における別パイ固有のデータである。

HTML(のみストア関連ラインが変更されなければならない)。

<div class="series" name="Series A"
  store="chartDataStore" field="slice"></div>

私はそれが行く方法を知ってみましょう。

他のヒント

私はdivの上のグラフを作成するために、プログラム的な方法を使用していたものの、カスタムラベルと同様のトラブルに直面しなければならなかった....ホープ、このことができます誰か....

var mytooltip = new dojox.charting.action2d.Tooltip(mychart,"default", 
    {text: function(e) {
               var tooltiptext = <construct ur custom label here>   
               return tooltiptext;
        }
    }); 

mychart iがチャート・ウィジェットを作成するために使用されていることを変数である....

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top