ChartJS Line Charts - удалить цвет под линиями
Хорошо, поэтому у меня работает диаграмма диаграммы ChartJS, которая непосредственно заполняется данными, поступающими для моего db.
Теперь мне нужно избавиться от цвета под каждой из линий. [как показано на скриншоте ниже].
![Пример графика]()
Здесь мой HTML:
<div ng-if="hasData">
<canvas id="line" class="chart chart-line" data="data" labels="labels" legend="true" series="series" options="options" click="onClick"></canvas>
<div>
Здесь My JS:
scope.labels = ['02:00','04:00','06:00', '08:00', '10:00', '12:00','14:00', '16:00', '18:00', '20:00', '22:00'];
scope.series = series;
scope.data = [volumesSelectedDate, volumesPeakDate, volumesModelCapacity];
scope.options = {
scaleOverride: true,
scaleStartValue: 0,
scaleSteps: 11,
scaleStepWidth: 6910,
}
scope.loadingDailyAppVolumes = false;
scope.hasData = true;
};
scope.onClick = function (points, evt) {
//console.log(points, evt);
};
Итак, как бы я это сделал?
Кроме того, как я могу вручную настроить цвет для каждой строки?
Пример:
выбранная дата: синий,
пиковая дата: желтый,
модель емкость: серый.
Спасибо.
Ответы
Ответ 1
Отметьте этот раздел в документах Chart.js. Установите для свойства fill
значение false в конфигурации вашего набора данных:
var data = {
labels: ["January", "February", "March", "April", "May", "June", "July"],
datasets: [{
label: "My First dataset",
fill: false,
data: [1, 2, 3]
}]
};
Укажите массив для свойства borderColor
, если вы хотите, чтобы каждая строка имела другой цвет штриха:
var myColors = ['red', 'green', 'blue']; // Define your colors
var data = {
labels: ["January", "February", "March", "April", "May", "June", "July"],
datasets: [{
label: "My First dataset",
fill: false,
borderColor: myColors
data: [1, 2, 3]
}]
};
Ответ 2
Ниже решение работало, когда интегрированная диаграмма js с Angular
$scope.options = {
scales: {
yAxes: [
{
id: 'y-axis-1',
type: 'linear',
display: true,
position: 'left'
}
]
},
elements: {
line: {
fill: false
}
}
};
<canvas id="" class="col-sm-12 chart chart-line" chart-data="data"
chart-options="options" chart-colors="colors">
</canvas>
Ответ 3
Я решил эту проблему.
Первый шаг. html элемент внутренний добавить < - chart-colors = "цвета"
например:
<canvas id="line" class="chart chart-line" data="data" labels="labels" chart-colors="colors" legend="true" series="series" options="options" click="onClick"></canvas>
второй шаг. $scope val colors Добавить
например:
$scope.colors = [{
backgroundColor : '#0062ff',
pointBackgroundColor: '#0062ff',
pointHoverBackgroundColor: '#0062ff',
borderColor: '#0062ff',
pointBorderColor: '#0062ff',
pointHoverBorderColor: '#0062ff',
fill: false /* this option hide background-color */
}, '#00ADF9', '#FDB45C', '#46BFBD'];
Удачи!
Ответ 4
Это сработало для меня:
$scope.color = [{
backgroundColor: 'transparent',
borderColor: '#F78511',
},];
Ответ 5
Просто установите опцию fill в false в опциях наборов данных:
data: {
datasets: [{
label: "",
data: dataPoints,
borderColor: color ,
fill:false //this for not fill the color underneath the line
}]
},
Ответ 6
У меня была та же проблема с использованием angular-chart.js и я получил желаемый результат с помощью:
$scope.override = {
fill: false
};
а также
<canvas class="chart chart-line"
chart-dataset-override="override"
chart-data="data">
</canvas>