This example shows a way to show target lines in a bar chart, by use of its second plot, of type point.
In the second plot, the dot's shape is changed to bar, and then it is rotated, making it look like target lines.
| new pvc.BarChart({ | |
| canvas: "cccExample", | |
| width: 600, | |
| height: 400, | |
| title: "Bar chart with target lines", | |
| animate: true, | |
| selectable: true, | |
| hoverable: true, | |
| legend: true, | |
| plot2: true, | |
| plot2Series: ['Paris', 'London'], | |
| plot2LinesVisible: false, | |
| barSizeMax: 20, | |
| orthoAxisOffset: 0.01, | |
| extensionPoints: { | |
| plot2Dot_shape: 'bar', | |
| plot2Dot_shapeSize: function() { | |
| // Need to provide a default for when bar series are hidden | |
| var diam = this.chart.plotPanels.bar.barWidth || | |
| this.chart.options.barSizeMax; | |
| // "finished(.)" prevents that, when hovered, | |
| // the size of the target lines increase | |
| return this.finished(diam); | |
| }, | |
| plot2Dot_shapeAngle: function() { | |
| return this.chart.isOrientationHorizontal() ? 0 : -Math.PI/2; | |
| }, | |
| legend2Dot_shapeAngle: function() { // not being inherited? | |
| return this.chart.isOrientationHorizontal() ? 0 : -Math.PI/2; | |
| } | |
| } | |
| }) | |
| .setData(relational_01, { crosstabMode: false }) | |
| .render(); |
| var relational_01 = { | |
| "resultset": [ | |
| ["London", "2011-06-05", 72], | |
| ["London", "2011-06-12", 50], | |
| ["London", "2011-06-19", 20], | |
| ["London", "2011-06-26", 23], | |
| ["London", "2011-07-03", 72], | |
| ["London", "2011-07-10", 80], | |
| ["London", "2011-07-26", 23], | |
| ["London", "2011-07-31", 72], | |
| ["London", "2011-08-07", 50], | |
| ["London", "2011-08-14", 20], | |
| ["London", "2011-08-28", 20], | |
| ["Paris", "2011-06-05", 27], | |
| ["Paris", "2011-06-26", 32], | |
| ["Paris", "2011-07-03", 24], | |
| ["Paris", "2011-07-10", 80], | |
| ["Paris", "2011-07-17", 90], | |
| ["Paris", "2011-07-24", 53], | |
| ["Paris", "2011-07-31", 17], | |
| ["Paris", "2011-08-07", 20], | |
| ["Paris", "2011-08-21", 43], | |
| ["Lisbon", "2011-06-12", 30], | |
| ["Lisbon", "2011-07-03", 60], | |
| ["Lisbon", "2011-07-10", 80], | |
| ["Lisbon", "2011-07-17", 15] | |
| ], | |
| "metadata": [{ | |
| "colIndex": 0, | |
| "colType": "String", | |
| "colName": "City" | |
| }, { | |
| "colIndex": 1, | |
| "colType": "String", | |
| "colName": "Date" | |
| }, { | |
| "colIndex": 2, | |
| "colType": "Numeric", | |
| "colName": "Quantity" | |
| }] | |
| }; |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title>Bar chart with Target Lines Series</title> | |
| <meta charset=utf-8 /> | |
| <!-- BEG CCC2 Includes --> | |
| <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/jquery.tipsy.js"></script> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/protovis.js"></script> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/protovis-msie.js"></script> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/tipsy.js"></script> | |
| <link href="http://www.webdetails.pt/ctools/charts/lib/tipsy.css" rel="stylesheet" /> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/def.js"></script> | |
| <script src="http://www.webdetails.pt/ctools/charts/lib/pvc-r2.0.js"></script> | |
| <!-- END CCC2 Includes --> | |
| </head> | |
| <body> | |
| <div id="cccExample" /> | |
| <script src="data.js"></script> | |
| <script src="chart.js"></script> | |
| </body> | |
| </html> |