2017-10-27 22 views
0

私は、ウィンドウの高さと幅を塗りつぶすグラフを持っています。 、yaxesは、これらのようないくつかのオプションを取得し、グラフの作成時にChart.js 2.7.0 Axesのフォントサイズは実行時に変更できますか?

:(別名ブラウザ)ウィンドウのサイズが変更されたよう

ticks: { display: true, min: 0, beginAtZero: true, max: 120, fontSize: 14 } 

を、より小さなあなたは窓、ご利用され、より少ないスペースを縮小しますチャートは、タイトル、x軸、私の2つのy軸、および凡例の私の初期のフォントサイズのために(私はそこにフォントを設定しませんでしたが、私はあなたができることを望んでいます)。

私の古いファンシーチャート(VisiFire)では、「無料」のために、タイトルと軸のフォントサイズが縮小しました(もちろん、拡張されました)。私はここで同じことをしたいと思います。

どのように達成できますか?

雅は、のようなものを知っている:

chart.scales['y-axes-1'].options.ticks.fontSize = new_font_size 

をもしそうなら、どこでそれを置くでしょうか?

私はアニメーションonProgressイベント(currentStep 1)を試しましたが、それは遅すぎると思います(またはoptions.ticks.fontSizeを設定するべきではありません)。私はアニメーションonCompleteの前にイベントを見つけようとしていました。そこで私はこれを設定することができました。そして、私はそれを設定し、現在のステップ1以降のすべてのステップで、フォントサイズをプリントアウトしました。これは新しいフォントサイズでしたが、変更されませんでした。

ありがとうございます。

EDIT:ticksのfontSizeを更新できないのですか?私はちょうどこの試みたので:

chartInstance.scales['Dataset1'].options.ticks.fontSize = 24; 
chartInstance.scales['Dataset1'].options.ticks.min = -100; 
chartInstance.scales['Dataset1'].options.scaleLabel.labelString = 'foo bar'; 
chartInstance.scales['Dataset1'].options.scaleLabel.fontSize = 36; 

をし、それが-100の分に更新されてしまった、ラベルがfooバーに変更し、そのラベルののfontSizeは36に跳ね上がったが、スティックは同じとどまりました。 http://jsfiddle.net/jmpxgufu/178/

これは私が何を意味するかを示しています。彼らは、私がここにjsfiddleを持っている24

に行きませんでした。フィドルを実行した後、5秒以内に(setInterval)アップデートを実行します。そして、目盛りはfontSizeを更新しません。私はこれを使用しています:https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.0/Chart.bundle.min.js、私は2.4.0を使用すると動作します。

答えて

0

私はここで一つとして確認され、バグを発見しました:https://github.com/chartjs/Chart.js/issues/4896

EDIT:まあ、それはバグとしてマークされました!さて、回避策があるか、2.7.0で変更されたように見えますが、これはどうやって設定するのですか?

マイナーでメジャーが使用されています:

myLiveChart.scales ['myAxis']。options.ticks.minor.fontSize = 36

関連する問題