如何使用Plotly绘制3D柱状图/饼图/甜甜圈图

4

我已经找到了使用plotly制作条形图、饼图和其他三维图表的代码。 一个简单的条形图如下:

from  plotly.offline import plot
from plotly.graph_objs import *
trace1 = Bar(
    x=['cats', 'dogs', 'monkeys'],
    y=[20, 14, 23]
)
data = Data([trace1])
plot(data)

在plotly中是否有选项可以绘制这个条形图在3D布局中。对于饼图/甜甜圈也是如此吗?


Plotly没有真正的函数来制作3D条形图,我对3D填充线的外观感到非常失望,因此我尝试创建一个函数来轻松地创建一些漂亮的外观。它与panda系列绑定,但将列表转换为panda系列非常容易。这是项目链接:https://github.com/AymericFerreira/Plotly_barchart3D - Feitan
2个回答

3
请查看官方文档:https://plot.ly/python/3d-charts/ 由于这应该是plot.ly中所有可用的3D图表的列表:
不,目前似乎没有3D条形图/饼图/甜甜圈的选项。
另请参见:https://community.plot.ly/t/will-there-be-3d-bar-charts-in-the-future/1045/2 酒吧/饼图/甜甜圈本质上是二维的,使它们成为三维将不提供任何附加值(除了外观)。
如上面的链接建议的那样,您可以尝试使用3D填充线图
尽管我怀疑为获得所需结果所需的额外复杂性是否值得。

应该是一个注释! - Naren Murali
你是对的 - 我以为系统会因为它的简单性质而自动转换它... - Sebastian Loehner
不行,我认为你需要更详细地解释plotly的工作原理,才能让它成为一个合格的答案,现在只是评论质量! - Naren Murali
@SebastianLoehner已经研究过了,我只能找到特定的图形布局,比如散点图或其他3D图形,但没有针对条形/饼图/甜甜圈图的。 - Naima
@NarenMurali 感谢大家的反馈。我已经更新了答案,所以现在它会明确说明之前隐含的内容... - Sebastian Loehner
你不知道什么是3D柱图。https://dev59.com/Lavka4cB1Zd3GeqPycVy#63816226 - huang

1

然而,Plotly中尚未实现3D柱状图。https://github.com/buran21/barchart3d-plotly提供了一种绘制具有1D标签数据的3D柱状图绘图函数。以下是一个示例:

import plotly.data as pdata
from barchart3d import barchart3d

df = pdata.gapminder()
df = df[df['year'] == 2007].sort_values(by='pop', ascending=False).head(10)
fig = barchart3d(
    df['country'].to_list(), (df['pop']/1e06).round(1).to_list(),
    'Top 10 most populous countries in 2007 [Gapminder]', 'Population, mln',
    colorscale='Bluered', opacity=0.6, flatshading=True)
fig.show()

Example output


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接