1

ハイチャート v3.01

散布図を使用して、名前付きカテゴリ内のポイントを描画しようとしています (これらは実際には数値ですが、シリーズ外であり、ギャップは必要ありません)。

折れ線グラフの種類を使用するとうまくいきますが、何百ものシリーズがあり、散布点がより明確になる可能性があるため、むしろ使用したくありません。

私が最も近いのはこれです:

編集 - 説明的な画像を投稿しますが、どうやら評判ポイントが必要です。はぁ。

こちらをご覧ください: http://i117.photobucket.com/albums/o63/Harry_Flashman/close_zpsfe6d3ea2.png

これは、x と y を参照するポイントを使用しています。

data: [{x:108432,test:100,y:0}, {x:109802,test:100,y:51}, etc. ]

上記とまったく同じようにやりたいのですが、ギャップはありません。

非線形のギャップのない軸を持つことができる唯一の方法は、カテゴリを使用することです。これは、以前に他の線タイプのグラフで使用したことがありますが、散布図では決して使用しませんでした。

代わりにカテゴリ配列で x 軸タイプの「カテゴリ」を使用すると、それぞれに 1 つの散布値のみが割り当てられ、残りは昇順の数値カテゴリに割り当てられます (つまり、点の「名前」オプションを使用すると、それらはグループ化されません)。 .

xAxis: {
  type: category,
  categories: ['108432','109802','110240', etc. ]
}

次のようなデータポイントを使用します。

data: [{name:'108432',test:100,y:0}, {name:'109802',test:100,y:51}, etc. ]

こんな感じで終了。各スキャッタ ポイントには独自のカテゴリがあります。

http://i117.photobucket.com/albums/o63/Harry_Flashman/not_zps31aa4fef.png

助けていただければ幸いです。これを機能させることができれば、これは素晴らしいことです。

ありがとう!

パット

PS。以下にチャート スクリプト全体 (大量のデータを除く) を追加しました。これは「ほぼ動作する」バージョンです。

$('#container').highcharts({
  chart:    { type: 'scatter', zoomType: 'xy'     },
  title:    { text: 'Revision vs Runtime Scatter' },
  subtitle: { text: 'L3 Performance Test'         },
  xAxis:    {
    title:      { enabled: true, text: 'Revision' },
    startOnTick:   true,
    endOnTick:     true,
    showLastLabel: true,
    showEmpty:     false,
    legend:      { y: 120, floating: true, backgroundColor: '#FFFFFF' },
    labels:      { rotation: -90, align: 'right' },
    categories:  ['101831','101849','101850','101857','101861','101866','101868','101878','101879','101880','101881','101882','101883','101884','101885','101888','101894','101900','101903','101905','101908','101913','101914']
  },
  yAxis:       { title: { text: 'Variance (%)' } },
  legend:      { layout: 'vertical' },
  plotOptions: {
    scatter: {
      marker: { radius: 5, states: { hover: { enabled: true, lineColor: 'rgb(100,100,100)' } } },
        states: { hover: { marker: { enabled: false } } },
        tooltip: {
          headerFormat: '<b></b>',
          pointFormat: '<b>Test {point.test}</b><br/>r{point.x}<br/>{point.y}% change<br/>{series.name}'
        }
      }
    },
    series: [{
      name: 'PRd',
      data: [{x:101857,test:267,y:0}, {x:101861,test:267,y:-1}, {x:101866,test:267,y:-0}, {x:101868,test:267,y:-1}, {x:101878,test:267,y:-1}, {x:101879,test:267,y:-1}, {x:101880,test:267,y:-0}, {x:101881,test:267,y:-0}, {x:101882,test:267,y:-0}, {x:101883,test:267,y:-0}, {x:101884,test:267,y:-0}, {x:101885,test:267,y:-0}, {x:101888,test:267,y:-0}, {x:101894,test:267,y:-1}, {x:101900,test:267,y:-0}, {x:101903,test:267,y:-0}, {x:101905,test:267,y:-1}, {x:101908,test:267,y:-1}, {x:101913,test:267,y:0}, {x:101914,test:267,y:1}, {x:101831,test:430,y:0}, {x:101849,test:430,y:1}, {x:101850,test:430,y:1}]
      }, {
      name: 'Non-PRd',
      data: [{x:101831,test:100,y:0}, {x:101849,test:100,y:51}, {x:101850,test:100,y:51}, {x:101857,test:100,y:52}, {x:101861,test:100,y:49}, {x:101866,test:100,y:50}, {x:101868,test:100,y:50}, {x:101878,test:100,y:50}, {x:101879,test:100,y:50}, {x:101880,test:100,y:50}, {x:101881,test:100,y:50}, {x:101882,test:100,y:50}, {x:101883,test:100,y:50}, {x:101884,test:100,y:50}, {x:101885,test:100,y:50}, {x:101888,test:100,y:50}, {x:101894,test:100,y:50}, {x:101900,test:100,y:50}, {x:101903,test:100,y:0}, {x:101905,test:100,y:50}, {x:101908,test:100,y:51}, {x:101913,test:100,y:50}, {x:101914,test:100,y:50}, {x:101831,test:10937,y:0}, {x:101849,test:10937,y:2}]
    }]
  });
});
4

1 に答える 1

4

わかりました、回避策で修正しました

基本的に Javascript で、ポイントが属するカテゴリに関連するポイント配列に位置を追加しました (PHP によって生成され、カテゴリは昇順でソートされます)。関連するビットは次のとおりです。

xAxis:    {
  categories: ['r101831', 'r101849', 'r101850']
}   

plotOptions: {
  tooltip: {
    headerFormat: '<b></b>',
    pointFormat: '
      <b>Test {point.test}</b><br/>
      r{point.revision}<br/>
      {point.y}% change<br/>
      {series.name}'
  }
}

series: [{
  name: 'PRd',
  data: [
  {x:3,revision:101831,test:267,y:0},
  {x:4,revision:101849,test:267,y:-1},
  {x:5,revision:101850,test:267,y:-0}
  ]}
]

最終結果はゴージャスに見えます。私は HighCharts が大好きです。

写真はこちら: http://i117.photobucket.com/albums/o63/Harry_Flashman/fixed_zps9952d58d.png

于 2013-05-11T05:54:08.310 に答える