[英]How can I plot only points (not lines) with flot?
最終,我正在追尋一個非常小的一維圖表,如下所示:
軸
數據
飛機
我需要在x軸上的特定點繪制三條線,而不是標准網格。
例:
[[40,-1],[40,1]], [[50,-1],[50,1]], [[60,-1],[60,1]]
這是我到目前為止所嘗試的:
d1 = [[48,0],[16,0],[10,0],[40,0],[30,0],[37,0]];
d2 = [[43,0],[60,0],[74,0],[83,0]];
var options = {
points: { show: true, fill: true, radius: 5 },
lines: { show: false, fill: true },
xaxis: { show: false, min:0, max:100, ticks: false, tickColor: 'transparent' },
yaxis: { show: false, min:-1, max:1, ticks: false, tickColor: 'transparent' },
grid: { show:false }
};
var data = [
{ data: d1, points: { color: '#E07571', fillcolor: '#E07571' } },
{ data: d2, points: { color: '#FDEDB2', fillcolor: '#FDEDB2' } }
];
$.plot($('#placeholder'), data, options);
問題:
這是一個快速模擬復制你的圖片:
d1 = [[48,0],[16,0],[10,0],[40,0],[30,0],[37,0]];
d2 = [[43,0],[60,0],[74,0],[83,0]];
var options = {
points: { show: true, radius: 10, lineWidth: 4, fill: false },
lines: { show: false },
xaxis: { show: false },
yaxis: { show: false },
grid: { show:true,
color: "transparent",
markings: [
{ xaxis: { from: 40, to: 40 }, color:"black" },
{ xaxis: { from: 50, to: 50 }, color:"black" },
{ xaxis: { from: 60, to: 60 }, color:"black" }
]
}
};
xCallBack = function (ctx, x, y, radius, shadow) {
ctx.arc(x, y, radius, 0, Math.PI * 2, false);
var text = 'X'
var metrics = ctx.measureText(text);
ctx.font="15px Arial";
ctx.fillStyle = "red";
ctx.fillText(text,x-metrics.width/2,y+4);
}
checkCallBack = function (ctx, x, y, radius, shadow) {
ctx.arc(x, y, radius, 0, Math.PI * 2, false);
var text = '✓'
var metrics = ctx.measureText(text);
ctx.font="15px Arial";
ctx.fillStyle = "green";
ctx.fillText(text,x-metrics.width/2,y+4);
}
var data = [
{ data: d1, color: 'red', points: {symbol: xCallBack } },
{ data: d2, color: 'green', points: {symbol: checkCallBack }}
];
$.plot($('#placeholder'), data, options);
在這里小提琴
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.