chart.container / chart.get(“container”) is accessible & seems to be working fine. Can you kindly share a JSFiddle (or Sample project over Google Drive / Onedrive) reproducing the issue so that we can run it at our end to understand the scenario better and help you out?
—
Vishwas R
Team CanvasJS
To ensure that the chart adjusts to the updated height, you can use a key prop on the CanvasJSChart component. When the height state changes, updating the key prop will force React to treat the component as a new one, which will apply the updated height. Please find the updated code-snippet below.
return (
<div>
<CanvasJSChart
options={options}
containerProps={{ width: "100%", height }}
key={height} // This forces re-mount when the height changes
/>
</div>
);
Another option is to directly update the chart’s height using the set method – chart.set("height", 100)
. Please refer to this Codesandbox link for updated code.
—
Vishwas R
Team CanvasJS
Thank you for reporting the issue and providing the use-case. We will investigate this further and work on a fix for future versions. Your feedback is greatly appreciated!
—
Vishwas R
Team CanvasJS
Are you referring to the axis ticks? If so, you can remove the hyphen next to the axis labels by setting the tickLength to 0. This will hide the ticks completely. If you’re referring to something else, could you please share a pictorial representation so that we can understand the scenario better and help you out?
—
Vishwas R
Team CanvasJS
Adam Evans,
Updating legendText on hovering over the datapoint should work fine as per your requirements. Please find the code-snippet below.
mouseover: onMouseover(e){
e.dataSeries.legendText = (e.dataSeries.dataPoints[e.dataPointIndex].x + ": " + e.dataSeries.dataPoints[e.dataPointIndex].y).toString();
e.chart.render();
}
Please take a look at this JSFiddle for an example of the same.
—
Vishwas R
Team CanvasJS
The chart is currently taking 100% of the container’s width and seems to be working fine. Could you please create a JSFiddle (or Stackblitz for React/Angular apps) that reproduces the issue & share it with us so that we can look into the code, understand the scenario better and help you out?
—
Vishwas R
Team CanvasJS
In a logarithmic scale, the axis labels represent powers of logarithmBase – defaults to 10 (1, 10, 100, etc.) instead of linear increments due to how logarithmic values work. Using a linear scale may better suit your needs if you prefer different label increments like 1, 2, 3,…
—
Vishwas R
Team CanvasJS
In case of React Charts, you can set the height and width of the chart-container by passing it as containerProps as shown in the code-snippet below.
<CanvasJSChart options={options} containerProps={{ width: '100%', height: '300px' }} />
Please refer to React Charts documentation for more information.
—
Vishwas R
Team CanvasJS
You can change the thickness of the line by updating endValue within rangeChanged event as shown in code-snippet below.
rangeData[1].endValue = new Date(rangeData[1].startValue.getTime() + (e.chart.axisX[0].viewportMaximum - e.chart.axisX[0].viewportMinimum) / e.chart.axisX[0].bounds.width * 3);
Please take a look at this updated JSFiddle for a working example of the same.
—
Vishwas R
Team CanvasJS
You seem to have missed out updating your code, code related to accepting stripline bounds from chart is missing in the Stackblitz you have shared. Updating it seems to be working fine. Please take a look at this updated Stackblitz for working example.
Also, in case of range-area chart adding range-area series with 2 datapoints with minor difference in the time component should work fine for single value as-well. Please take a look at this updated JSFiddle.
—
Vishwas R
Team CanvasJS
You seem to have replaced App.jsx code with Chart.jsx code in the Stackblitz link that you have shared. Either you can use stripline in this case as shown in the previous reply or you can use range-area chart instead of stripline. The advantage of using range-area chart in this scenario includes letting library to show tooltip, mouse-events & showing series in legend. Please take a look at this JSFiddle for an example of the same.
—
Vishwas R
Team CanvasJS
Tooltip for stripline is not available as of now. In the current case of zooming / panning, the solution shared earlier can be improved further by checking if the current-mouse coordinate is within the plotarea bounds or not along with existing conditions as shown in the code-snippet below.
xPos >= stripLine.chart.plotArea.x1 && xPos <= stripLine.chart.plotArea.x2 && yPos >= stripLine.chart.plotArea.y1 && yPos <= stripLine.chart.plotArea.y2
Please take a look at this updated Stackblitz for working code.
—
Vishwas R
Team CanvasJS
Checking if the startValue & endValue lies within the axis range should work fine in this case. Please find the code-snippet for the same below.
stripLine.startValue < stripLine.chart.axisX[0].viewportMaximum && stripLine.endValue > stripLine.chart.axisX[0].viewportMinimum
Please take a look at this updated Stackblitz for working code.
—
Vishwas R
Team CanvasJS
You can add tooltip to Stripline based on length of dataseries as shown in the code-snippet below.
if (chart.data && chart.data.length > 0) {
addTooltipToStripline(chart.axisX[0].stripLines[0], 'Stripline 1');
}
Please take a look at this updated Stackblitz for complete code.
—
Vishwas R
Team CanvasJS
One of our representatives from sales team will get in touch with you soon. For more information on licensing please contact sales@canvasjs.com
—
Vishwas R
Team CanvasJS