Opened 7 years ago

Closed 7 years ago

#14538 closed defect (fixed)

Mouse Indicator Does not work on Line Chart with null value in data

Reported by: lampshade9909 Owned by: cjolif
Priority: high Milestone: 1.7.2
Component: Charting Version: 1.7.1
Keywords: Mouse Indicator, null, dojox, Cc:
Blocked By: Blocking:

Description

The Mouse indicator function does not work on a dojox line chart where a series of data contains a null value. Can you please fix this? The Mouse indicator is a great feature; however, My project heavily relies on dojox line charting where many series contain null values.

Here is a copy/pastable example along with screenshots. Please notice that there is one "null" in the data, and that the mouse indicator works on the left side of the null but fails to work on the right side of the null.

Thank you, Joey

<!DOCTYPE HTML>
<html lang="en">
	<head>
	
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Chart 2D: dynamics</title>
		<style type="text/css">
			@import "/media/js/dojo/dojo/resources/dojo.css";
		
			.dojoxLegendNode {border: 1px solid #ccc; margin: 5px 10px 5px 10px; padding: 3px}
			.dojoxLegendText {vertical-align: text-top; padding-right: 10px}
		</style>

		<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" type="text/javascript"></script> 
		
		<script type="text/javascript">
		
		
			// Require the basic 2d chart resource: Chart2D
			dojo.require("dojox.charting.Chart2D");

			// Require the theme of our choosing
			//"Claro", new in Dojo 1.6, will be used
			dojo.require("dojox.charting.themes.Tom");
			
			dojo.require("dojox.charting.action2d.MouseIndicator");
			
			
			// Define the data
			//var chartData = [10000,9200,11811,12000,7662,13887,14200,12222,12000,10009,11288,12099];
			// Define the data with a couple nulls
			var chartData = [10000,9200,11811,12000,null,13887,14200,12222,12000,10009,11288,12099];
			
			
			var makeObjects = function(){
				
				
				// Create the chart within it's "holding" node
				var chart = new dojox.charting.Chart2D("chartNode");

				// Set the theme
				chart.setTheme(dojox.charting.themes.Tom);

				// Add the only/default plot 
				chart.addPlot("default", {
					type: "Lines",
					markers: true
				});
				
				// Add axes
				chart.addAxis("x");
				chart.addAxis("y", { min: 5000, max: 15000, vertical: true, fixLower: "major", fixUpper: "major" });

				// Add the series of data
				chart.addSeries("Monthly Sales",chartData);
				
								
				// Initialize the mouse indicator to Series 1
				mouseIndicator = new dojox.charting.action2d.MouseIndicator(chart, "default", { series : "Monthly Sales" });

				// Render the chart!
				chart.render();

			
				
				
				
			};
			
			dojo.addOnLoad(makeObjects);
			
			
			
				
		</script>
	
	</head>
	<body onLoad="javascript:setupPage();" class="claro">
		<table>
			
			<tr>
				<h1>Sandbox</h1></br>
			</tr>
			
			<h1>Demo: Monthly Sales</h1>
			
			<div id="chartNode" style="width:800px;height:400px;"></div>
		
	</body>

</html>


Attachments (1)

Screen Shot 2011-12-29 at 10.46.54 AM.png (148.9 KB) - added by lampshade9909 7 years ago.

Download all attachments as: .zip

Change History (6)

Changed 7 years ago by lampshade9909

comment:1 Changed 7 years ago by Adam Peller

Component: DojoxCharting
Owner: changed from Adam Peller to Eugene Lazutkin

comment:2 Changed 7 years ago by cjolif

Owner: changed from Eugene Lazutkin to cjolif

comment:3 Changed 7 years ago by cjolif

In [27484]:

refs #14538. Fixes indicator if a value is null.

comment:4 Changed 7 years ago by cjolif

Milestone: tbd1.7.2
Status: newassigned

comment:5 Changed 7 years ago by cjolif

Resolution: fixed
Status: assignedclosed

In [27486]:

fixes #14538. !strict.

Note: See TracTickets for help on using tickets.