こんにちは私はPlotlyでチャートを作成していますが、標準の塗りつぶしの代わりにグラデーションを持つようにしたいと考えています。グラフを作成した後にグラデーションを追加する
次に、その後、私はこのコードを使用してグラデーションセクションを作成します:
チャートは、チャートの周囲のDOMはこのようになりますビルドするときPlotly.newPlot(className, chartData, layout, {displayModeBar: showModeBar});
を
function createGradient() {
var svg = document.getElementById('line-chart-impressions').getElementsByClassName('trace')[0];
var fillChange = document.getElementById('line-chart-impressions').getElementsByClassName('js-tozero')[0];
var defs = document.createElement('defs');
var linearGradient = document.createElement('linearGradient');
linearGradient.setAttribute('id', 'gradient');
var stop1 = document.createElement('stop');
stop1.setAttribute("offset", "5%");
stop1.setAttribute("stop-color", "#FFC338");
var stop2 = document.createElement('stop');
stop2.setAttribute("offset", "100%");
stop2.setAttribute("stop-color", "#FFEA68");
svg.appendChild(defs);
defs.appendChild(linearGradient);
linearGradient.appendChild(stop1);
linearGradient.appendChild(stop2);
fillChange.setAttribute('fill', 'url(#gradient)');
}
私はグラデーションを後で追加するためだと思うが、解決策があるかどうか本当に知りたい。私のグラフにはこのような塗りつぶしがありません。
あなたは実際に質問しません。何が問題ですか?グラデーションが表示されていないと思われますか? –