Plotly table is not working
Problem Overview
- plotly table is showing a blank chart in Angular solution
- Note: I have tried the same thing a month back with plotly version 2.2.1 and it was working fine.
Steps Followed
-
Installed plotly in an Angular solution with below commands npm install plotly.js-dist --save npm install @types/plotly.js --save npm install @types/d3 --save
-
Rename folder "plotly.js" to "plotly.js-dist" in "node_modules/@types".
Line/Scatter plots works fine with this approach. However, table is showing an empty graph.
Also, tried with PlotlyViaCDNModule - still the issue is same
Below is how the angular component & module files
app.module.ts
import { PlotlyViaCDNModule } from 'angular-plotly.js'; import { CommonModule } from '@angular/common';
PlotlyViaCDNModule.setPlotlyVersion('1.55.2'); // can be latest or any version number (i.e.: '1.40.0')
PlotlyViaCDNModule.setPlotlyBundle('basic');
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
PlotlyViaCDNModule,
CommonModule
],
app.component.ts
export class AppComponent { public values = [ ['Salaries', 'Office', 'Merchandise', 'Legal', 'TOTAL'], [1200000, 20000, 80000, 2000, 12120000], [1300000, 20000, 70000, 2000, 130902000], [1300000, 20000, 120000, 2000, 131222000], [1400000, 20000, 90000, 2000, 14102000]]
public data = [{ type: 'table', header: { values: [["EXPENSES"], ["Q1"], ["Q2"], ["Q3"], ["Q4"]], align: "center", line: {width: 1, color: 'black'}, fill: {color: "grey"}, font: {family: "Arial", size: 12, color: "white"} }, cells: { values: this.values, align: "center", line: {color: "black", width: 1}, font: {family: "Arial", size: 11, color: ["black"]} } }]
constructor() {
}
}
app.component.html <plotly-plot [data]="data">
Update
If I use the in index.html table traces works. This seems strange as rest of the chart types work without this.
Hello @SharadhiSuresha . I am quite sure the issue is the PlotlyViaCDNModule.setPlotlyBundle('basic');. You've added the basic plotly.js file, which might no have the chart types you want/need. Have you tried commenting out this line to have the plotly.js full ?