6

jqplot チャートにラベルを重ねたいと思います。ラベルは、テキストまたは理想的には任意のマークアップで構成する必要があります。ドキュメントを調べましたが、メインの jqplot チャート エリアに任意のラベルの例が見つかりません。

jqplot の関連機能: canvasOverlayは、グラフに任意の線を描画するために使用されます。さらに、「タイトル」ラベルは存在しますが、チャートの外にあります。

これは単純なはずです。いくつかのオプション:

  1. メイン ラベルの jqplot CSS を変更して、チャート内に移動します。
  2. jqplot の新しいラベル。
  3. 問題の範囲は実際には jqplot の外にあり、適切な解決策は Canvas を使用する一般的なものです。

前もって感謝します!

4

3 に答える 3

5

jqplot の作成者である Chris Leonello が 2010 年に Google グループに投稿した解決策を見つけました: https://groups.google.com/forum/?fromgroups=#!topic/jqplot-users/GDZW4BsDMiA

Chris の解決策は、この行を plot1 コードの後に​​配置することであり、私にとってはうまく機能します。

mytitle = $('<div class="my-jqplot-title" style="position:absolute;text-align:center;padding-top: 15px;width:100%">My Custom Chart Title</div>').insertAfter('.jqplot-grid-canvas');

于 2013-01-25T23:35:45.607 に答える
3

次のように、HTML5 Canvas で実行してみてください。

<script type="text/javascript">
window.addEventListener('load', function () {
  // Get the canvas element.
  var elem = document.getElementById('chart1');
  if (!elem || !elem.getContext) {
    return;
  }

  // Get the canvas 2d context.
  var context = elem.getContext('2d');
  if (!context) {
    return;
  }

  // Let's draw "Hello world!" in blue.
  context.fillStyle    = '#00f';

  // The font property is like the CSS font property.
  context.font         = 'italic 30px sans-serif';
  context.textBaseline = 'top';

  if (context.fillText) {
    context.fillText('Hello world!', 0, 0);
  }

  // It looks like WebKit doesn't support the strokeText method.
  // Tested on Ubuntu 8.10 Linux in WebKitGTK revision 38095 (2008-11-04, svn 
  // trunk build).
  context.font = 'bold 30px sans-serif';
  if (context.strokeText) {
    context.strokeText('Hello world!', 0, 50);
  }
}, false);
</script>
于 2013-01-23T00:22:55.163 に答える