在 Plotly 图中将背景颜色设置为透明

Posted

技术标签:

【中文标题】在 Plotly 图中将背景颜色设置为透明【英文标题】:Setting Background color to transparent in Plotly plots 【发布时间】:2015-07-10 04:19:43 【问题描述】:

我的python代码创建了一个情节条形图,但背景是白色的,我想把它改成透明色是可行的

我的代码:

import plotly.plotly as py
from plotly.graph_objs import *
py.sign_in('username', 'api_key')
data = Data([
Bar(
    x=['Sivaranjani S', 'Vijayalakshmi C', 'Rajeshwari S', 'Shanthi Priscilla', 'Pandiyaraj G', 'Kamatchi S', 'MohanaPriya', 'Madhumitha G', 'Franklin Alphones Raj J', 'Akfaris Almaas', 'Biswajit Champati', 'Priya R', 'Rekha Rajasekaran', 'Sarath Kumar B', 'Jegan L', 'Karthick A', 'Mahalakshmi S', 'Ragunathan V', 'Anu S', 'Ramkumar KS', 'Uthra R'],
    y=[1640, 1394, 1390, 1313, 2166, 1521, 1078, 1543, 780, 1202, 1505, 2028, 2032, 1769, 1238, 1491, 1477, 1329, 2038, 1339, 1458],
    text=['Scuti', 'Scuti', 'Cygni', 'Scorpii', 'Scuti', 'Pollux', 'Scorpii', 'Pollux', 'Scuti', 'Pollux', 'Scorpii', 'Scorpii', 'Scuti', 'Cygni', 'Scorpii', 'Scuti', 'Scuti', 'Pollux', 'Scuti', 'Pollux', 'Pollux'])])
plot_url = py.plot(data)

图表如下所示

【问题讨论】:

【参考方案1】:

对于完全透明的绘图,请确保同时指定纸张的 bgcolor 和绘图的:

import plotly.plotly as py
from plotly.graph_objs import *
py.sign_in('', '')
data = Data([
    Bar(
        x=['Sivaranjani S', 'Vijayalakshmi C', 'Rajeshwari S', 'Shanthi Priscilla', 'Pandiyaraj G', 'Kamatchi S', 'MohanaPriya', 'Madhumitha G', 'Franklin Alphones Raj J', 'Akfaris Almaas', 'Biswajit Champati', 'Priya R', 'Rekha Rajasekaran', 'Sarath Kumar B', 'Jegan L', 'Karthick A', 'Mahalakshmi S', 'Ragunathan V', 'Anu S', 'Ramkumar KS', 'Uthra R'],
        y=[1640, 1394, 1390, 1313, 2166, 1521, 1078, 1543, 780, 1202, 1505, 2028, 2032, 1769, 1238, 1491, 1477, 1329, 2038, 1339, 1458],
        text=['Scuti', 'Scuti', 'Cygni', 'Scorpii', 'Scuti', 'Pollux', 'Scorpii', 'Pollux', 'Scuti', 'Pollux', 'Scorpii', 'Scorpii', 'Scuti', 'Cygni', 'Scorpii', 'Scuti', 'Scuti', 'Pollux', 'Scuti', 'Pollux', 'Pollux']
    )
])

layout = Layout(
    paper_bgcolor='rgba(0,0,0,0)',
    plot_bgcolor='rgba(0,0,0,0)'
)

fig = Figure(data=data, layout=layout)

plot_url = py.plot(fig, filename='transparent-background')

【讨论】:

谢谢!对于那些想要更多选择的人,这里是官方文档:plot.ly/python/reference/#layout【参考方案2】:

您可以使用布局更改其颜色,参数bgcolouropacity 设置为您的愿望。你可以这样做:

data = Data([Bar(... The same you already have...)])

layout = Layout(
    title='Your Title',
    (xaxis, yaxis, WHAT EVER YOU WANT TO SET)

    paper_bgcolor='rgb(233,233,233)', # set the background colour

)
fig = Figure(data=data, layout=layout)
py.plot(fig)

你可以找到一些例子here

【讨论】:

以上是关于在 Plotly 图中将背景颜色设置为透明的主要内容,如果未能解决你的问题,请参考以下文章

在ios 7中将UI状态栏的背景颜色设置为黑色

如何设置Android中控件的颜色透明度

CSS中背景颜色透明度如何设置?

修复后 Safari 背景颜色过渡为透明。漏洞?

winform窗体中我同时设置了背景颜色和背景图但只显示了背景颜色,我只想显示背景图该怎么做

MFC中richedit控件设置为透明后出现文字残留现象