0

jqplot.pointlabels.js ファイルに数行追加しただけなので、jqplot pointlabels オプションに追加のオプションを追加できます。そのための新しいプラグインを作成するにはどうすればよいですか?

もちろん、更新する必要がある場合は、これらの変更を保持したいと思います。これを行う方法がわかりません。タイムライン・ガント的なグラフを作ろうとしています。各アイテムまたはライン ピースは、2 つのポイントだけのシリーズです。そのため、両端にポイント ラベルを配置する代わりに、中心を計算してラベルを 1 つだけ配置します。

したがって、jqplot.pointlabels.js では、322 行目は次のようになります。

            if (p.centerLabel) {
                var ell =  xax.u2p(pd[i][0]) + ((xax.u2p(pd[1][0]) - xax.u2p(pd[0][0])) / 2) +p.xOffset(elem, location);
            } else {
                var ell = xax.u2p(pd[i][0]) + p.xOffset(elem, location);    
            }

jqplot のオプションでは、次のように記述します。

  pointLabels:{
              show:true,
              location:'s',
              fontSize: '1em',
              centerLabel: true, // extra option, see code
              labelsFromSeries: true,
              formatter: $.jqplot.DefaultTickFormatter,
          }

すべてのコードを jqplot.singleSeriesLabels.js という新しいプラグインにコピーできますが、jqplot でそのプラグインを「pointLabels」に使用するにはどうすればよいですか?

4

1 に答える 1

0

簡単な解決策を見つけました:完全なプラグインを新しいファイルにコピーし、プラグイン名を次のように変更しました

$.jqplot.newPluginName = function(options) {

pointLabels プラグインのオプションを設定するために使用したサイトで、同じことを行いますが、新しい名前を使用します。

newPluginName:{
          show:true,
          location:'s',
          fontSize: '1em',
          centerLabel: true, // extra option, see code
          labelsFromSeries: true,
          formatter: $.jqplot.DefaultTickFormatter,
      }

サイトに新しいプラグインファイルを含めることを忘れないでください

于 2012-08-22T09:24:50.340 に答える