morris.jsの行/エリアのyminを更新する方法はありますか? 私はそれを試してみた:morris.js line update ymin
chart.ymin = 10
が、YMINは0
それ `sは不可能morris.jsで、そのような機能が含まれ、他のチャートlibarysがあるまだありますか?
morris.jsの行/エリアのyminを更新する方法はありますか? 私はそれを試してみた:morris.js line update ymin
chart.ymin = 10
が、YMINは0
それ `sは不可能morris.jsで、そのような機能が含まれ、他のチャートlibarysがあるまだありますか?
ソリューション1
あなたがtrueにモリスパラメータresize
を設定していることを確認します。
次に、あなたの行動に、あなたは(ウィンドウのサイズ変更をトリガ)のチャートを再描画し、グラフがうまく配置されていることを確認し、ymin
を設定することができます。
chart.ymin = 10;
chart.redraw();
$(window).trigger("resize");
次のスニペットを試してみてください
var data = [
{ Date: '2016-01-01', Sales: 10 },
{ Date: '2016-01-02', Sales: 20 },
{ Date: '2016-01-03', Sales: 40 },
{ Date: '2016-01-04', Sales: 5 },
{ Date: '2016-01-05', Sales: 50 }
];
var chart = new Morris.Line({
element: 'chartLine',
data: data,
xkey: 'Date',
ykeys: ['Sales'],
labels: ['Sales'],
resize: true,
xLabels: 'day',
parseTime: false
});
$(".ymin").on("click", function() {
chart.ymin = 10;
chart.redraw();
$(window).trigger("resize");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.min.js"></script>
<link href="//cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.css" rel="stylesheet" />
<div id="chartLine"></div>
<div class="ymin">Set ymin</div>
Morrisパラメータresize
を温度チャートに設定します。
Morris GitHubに利用可能なMorris CSSが含まれていることを確認してください。このCSSがないと、チャートをホバーするとチャートの下にデータが表示され、setInterval
から次のデータ更新時にx軸が非表示になります。
グラフの高さを取得/設定しようとするコードを削除し、ウィンドウのサイズ変更をトリガし、温度チャートの再描画を呼び出します。
最後に、あなたの$(document).ready
機能に次のコードを追加します。
var delay = (function() {
var timer = 0;
return function (callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
$(window).resize(function() {
delay(function() {
TemperatureChart.redraw();
}, 300);
}).trigger('resize');
あなたCodePenの以下のフォークを試してみてください:codepen.io/krlzlx/pen/prwMLr
おかげで、それが正常に動作します。少々(数時間後には大きな)問題を除いて。私がそれを実行するたびに、すべてのグラフ、私は変化する1つのグラフだけでなく、ピクセルのランダムな量によって大きくなる。 (http://imgur.com/a/cDG90)ページはhttp://imgur.com/a/0mKCmのようになります。あなたはアイデアを持っているのですか、それともmorris jsで問題を開くための最良の方法ですか? – Cripi
残念ながら、Morrisは今のところ更新されていないので、あなたが問題に役立つとは思わないでしょう。私はチャートが大きくなって苦労した。私はこの問題を解決することができたが、正確にどのように覚えていない。私が正しいなら、 '$( 'svg')。height(800)'のような 'svg'の高さを設定しようとすることができます。それが役に立ったら教えてください。 – krlzlx
ねえ、私がしようとしているのは、このようなsthです: 'var heightBefore = document.getElementById(" chart ")。firstChild.height.animVal.value; chart.ymin = response.data.chart.minimum.temperature; chart.redraw(); $(ウィンドウ).trigger( "サイズ変更"); document.getElementById( "chart")。firstChild.height = heightBefore; '。私が得る高さは良いですが、私はグラフの高さを変更することはできません?どのように高さを変えますか? – Cripi