Мне нужно нарисовать график с тремя различными строками. Линейный граф.Холст HTML5 - Различные штрихи
Я попытался сделать это:
function draw()
{
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
ctx.lineWidth=10;
ctx.strokeStyle="teal";
ctx.moveTo(10,CompanyA[0]);
ctx.lineTo(110,CompanyA[1]);
ctx.lineTo(210,CompanyA[2]);
ctx.stroke();
ctx.strokeStyle="green";
ctx.moveTo(10,CompanyB[0]);
ctx.lineTo(110,CompanyB[1]);
ctx.lineTo(210,CompanyB[2]);
ctx.stroke();
ctx.strokeStyle="yellow";
ctx.moveTo(10,CompanyC[0]);
ctx.lineTo(110,CompanyC[1]);
ctx.lineTo(210,CompanyC[2]);
ctx.stroke();
}
Но, по-видимому, последний удар рисует для всех линий. Таким образом, я получаю 3 желтые линии, вместо тикового, зеленого и желтого. Я попытался создать три разных контекста (ctx1, ctx2 и ctx3), но по какой-то причине все они были нарисованы с помощью вызова «ctx3.stroke()».
Что было бы правильным способом сделать это?
Это правильно, но просто для того, чтобы добавить некоторое объяснение: вы собрали путь из трех сегментов, поглаживая первую часть в тиале, затем первую и вторую части зеленым, а затем все три части желтого цвета. Желтый рисует над другими. –
Эй, спасибо Рассел Захнизер, я добавил объяснение в свой ответ. – Delta
Большое спасибо, ребята, это сработало: D – Kiloku