L'API du graphique Flot prend en charge les échelles à double axe V, comme indiqué par cet exemple .
J'utilise Google Charts - est-ce possible aussi avec Google? J'ai regardé les exemples et les documents, mais je ne trouve aucun exemple/référence pour indiquer qu'il prend en charge les graphiques à deux axes.
Il m'a fallu un certain temps pour comprendre cela, mais Google Charts prend en charge le double axe Y (axe V). Je veux utiliser l'API Javascript et non l'interface HTML.
Cet exemple peut être testé ici: http://code.google.com/apis/ajax/playground/?type=visualization#line_chart
Remplacez tout ce code par ce code montrant comment avoir deux échelles d'axe Y différentes:
function drawVisualization() {
// Create and populate the data table.
var data = new google.visualization.DataTable();
data.addColumn('string', 'x');
data.addColumn('number', 'Cats');
data.addColumn('number', 'Blanket 1');
data.addColumn('number', 'Blanket 2');
data.addRow(["A", 1, 1, 0.5]);
data.addRow(["B", 2, 0.5, 1]);
data.addRow(["C", 4, 1, 0.5]);
data.addRow(["D", 8, 0.5, 1]);
data.addRow(["E", 7, 1, 0.5]);
data.addRow(["F", 7, 0.5, 1]);
data.addRow(["G", 8, 1, 0.5]);
data.addRow(["H", 4, 0.5, 1]);
data.addRow(["I", 2, 1, 0.5]);
data.addRow(["J", 3.5, 0.5, 1]);
data.addRow(["K", 3, 1, 0.5]);
data.addRow(["L", 3.5, 0.5, 1]);
data.addRow(["M", 1, 1, 0.5]);
data.addRow(["N", 1, 0.5, 1]);
// Create and draw the visualization.
new google.visualization.LineChart(document.getElementById('visualization')).
draw(data, {curveType: "function", width: 500, height: 400,
vAxes: {0: {logScale: false},
1: {logScale: false, maxValue: 2}},
series:{
0:{targetAxisIndex:0},
1:{targetAxisIndex:1},
2:{targetAxisIndex:1}}}
);
}
En ajoutant maxValue: 2
au code, et en définissant les séries 1 et 2 sur cet axe, elles fonctionnent correctement sur un deuxième axe.
solution non JavaScript
En supposant que vous recherchez une série qui partage le même axe X (horizontal) mais qui a des valeurs (et des échelles) différentes pour l'axe Y (vertical), vous pouvez le faire sans recourir à JavaScript comme suit:
Vous pouvez maintenant modifier les différentes autres propriétés du graphique pour lui donner l'apparence souhaitée en termes de présentation.