It seems like the issue you’re facing with the ValueFormatString not working is due to the case sensitivity. The correct property name is valueFormatString in camelCase, not ValueFormatString. Please try updating it to valueFormatString and check if that resolves the problem. Please take a look at this JSFiddle for working code. If the issue persists, kindly create a JSFiddle reproducing the issue & share it with us so that we can look into the code/chart-options being used, understand the scenario better and help you out.
—
Vishwas R
Team CanvasJS
@j,
the “Chromes console” says the next message when a open the section on web that has the graph:
[url=https://postimg.cc/w7PhZrCr][img]https://i.postimg.cc/w7PhZrCr/error-graph.jpg[/img][/url]
It seems like you might be using an older version of CanvasJS. CanvasJS library was optimized for multiple readback operations starting from v3.7.11 GA. Please refer to this blog post for more information on the improvements and changes made. We recommend updating to the latest version of CanvasJS to take advantage of performance enhancements, bug fixes & new features. Upgrading to the latest version will ensure smoother operations, better compatibility & overall enhanced performance in your application.
—
Vishwas R
Team CanvasJS
Adam Evans,
To achieve this, you can make use of the updated event to track the current x and y-values, and display those values dynamically in the legend. By utilizing shared tooltip, the values from different chart series can be synchronized and displayed consistently in the legend. Please take a look at this JSFiddle for an example of the same.
—
Vishwas R
Team CanvasJS
Mohammad Imtiyaz,
3D charts are not supported as of now.
—
Vishwas R
Team CanvasJS
You are encountering this issue because you’re modifying the axis minimum and maximum values within the rangeChanged event handler. Instead, performing all the necessary calculations within the rangeChanging event handler or calling stockChart.render() after completing the calculations in rangeChanged should resolve the problem. Please take a look at this updated JSFiddle for a working example.
—
Vishwas R
Team CanvasJS
James,
CanvasJS does support a feature similar to plotBands in Highcharts called stripLines. You can use stripLines in two ways:
Please find the code-snippet for creating a stripLine (plotband) below:
axisY:{
stripLines:[{
startValue: 25,
endValue: 32,
color: "#d8d8d8"
}]
}
—
Vishwas R
Team CanvasJS
With your perpetual license, you can use CanvasJS for as long as you like without any additional payments. The “expired” message you’re seeing refers to the subscription for updates, which is free for the first year. During the first free update period, you can download the latest versions available. After this period, you can still download older versions, but you will no longer have access to new updates unless you renew your updates subscription.
For any sales-related queries, feel free to contact sales@canvasjs.com.
—
Vishwas R
Team CanvasJS
CanvasJS React Charts seems to be working fine with the latest version of Next.js (v15.1.6) & React (v19.0.0GA). Please refer to this article for a tutorial on adding CanvasJS Chart in Next.js app.
Can you kindly try updating all the packages to latest & check if that works? If the issue still persists, kindly create a sample project reproducing the issue, upload it to Google-Drive or Onedrive & share the link with us so that we can run it locally at our end, understand the scenario better and help you out?
—
Vishwas R
Team CanvasJS
Peter,
You can download the commercial version package from the My Account page and the steps to integrate have been addressed in the instruction.html file which is present inside each package under the @canvasjs folder. For example, if you are integrating CanvasJS charts with Angular, download the commercial version and navigate to @canvasjs > angular-charts > instruction.html
Additionally, you can even host the commercial version of the CanvasJS chart package (@canvasjs/charts) on your own server by following these steps:
@canvasjs/charts": "https://your-domain.com/packages/canvasjs-charts-v3.11.0.tar.gz
This approach avoids conflicts with public npm versions and integrates smoothly into your app. Please refer to this article for more information.
—
Vishwas R
Team CanvasJS
Gitte Kynde,
Can you kindly create a JSFiddle reproducing the issue you are facing and share it with us so that we can look into the code, understand the scenario better, and help you out?
From what we have observed, sometimes things get delayed mostly when we are unable to reproduce the issue or not able to understand the exact requirements or the solution that we provide may not work properly due to the variation in chart-options being used by you and us.
Having a JSFiddle helps us in figuring out the issue and many a time we can just edit your code on JSFiddle to fix the issue right away.
—
Vishwas R
Team CanvasJS
For security reasons, browsers restrict reading local CSV files and cross-origin requests. Serving CSV file from a local web server and making an AJAX call to it or serving it from CORS enabled CSV hosting should work fine in this case. Please refer to this StackOverflow post for more information.
—
Vishwas R
Team CanvasJS
Zooming across charts is not working after switching the dashboard as you are resetting the chart-references on switching the charts. Instead setting the selectedDashboard only if the value has changed & adding chart-references only once should work fine for you. Please find the updated code-snippet below.
Change selectedDashboard only if the value has changed.
const handleDashboardChange = (event) => {
if (event.target.value !== selectedDashboard) {
setSelectedDashboard(event.target.value);
}
};
Add chart-ref only once.
<CanvasJSChart
key={index}
options={options}
onRef={(ref) => {
if (ref && !chartsRef.current.includes(ref)) {
chartsRef.current.push(ref);
}
}}
/>
Please take a look at this updated Stackblitz for working example.
—
Vishwas R
Team CanvasJS
Changing legend line dash type is not possible as of now. However, you can achieve rendering broken line in legend by setting the legendMarkerColor to white (same as chart background) and legendMarkerType to triangle. Please take a look at this JSFiddle for an example of the same.
—
Vishwas R
Team CanvasJS
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