私は、Windowsサービスをチェックし、var colorScale = d3.scale.ordinal()
を使用して状態とstart_typeを決定する監視インターフェイスを作成しようとしています。未定義が暗示されているにもかかわらず、
状態が「実行中」の場合、セルの緑色で色付けします。状態が「停止」の場合、セルの赤色で色付けしたいと思います。その他の値は、白で表示されます。ここで
は私の完全なコードです:
<html>
<body>
<script src="https://d3js.org/d3.v4.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
<script type="text/javascript">
var parsedCSV = d3.csv("servicecheckupreport.csv", function(parsedCSV){
var colorScale = d3.scale.ordinal()
.domain([" ","RUNNING","STOPPED"])
.range(["White","MediumSpringGreen","OrangeRed"]);
var body = d3.select("body");
var headers = Object.keys(parsedCSV[0]);
var table = body.append('table')
var thead = table.append('thead')
var tbody = table.append('tbody');
var head = thead.selectAll('th')
.data(headers)
.enter()
.append('th')
.text(function(d) {
return d;
});
var rows = tbody.selectAll('tr')
.data(parsedCSV)
.enter()
.append('tr');
var cells = rows.selectAll('td')
.data(function(d) {
return Object.values(d);
})
.enter()
.append('td')
.style("background-color", function(d) {
if(d){
return colorScale(d);
}else{
return "White";
}
})
.text(function(d) {
return d;
});
});
</script>
これが出力されます:
問題は、コードは、IPアドレスとホスト名の色になる、ですそれらの細胞が白くなるべきとき。
Iは、下記のように私の配列内の3番目の値を使用してordinal.unknown()
を起動しようとしています:
var colorScale = d3.scale.ordinal()
.domain([" ","RUNNING","STOPPED"])
.range(["White","MediumSpringGreen","OrangeRed"]);
アレイ" "
の最初の値は、アレイ上に外側第二及び第三のある任意の値を示し白で色付けされますが、まだそれはしません。
おそらく関係はありませんが、なぜあなたは 'd3'のバージョン3と4の両方をロードしていますか? – sparta93