如何在 Plotly 中增加飞机的大小

2024-04-07

Got the 以下代码 https://github.com/tiago-peres/immersion/blob/master/platforms_v2.ipynb

import pandas as pd
import plotly.graph_objects as go
import numpy as np

df = pd.read_csv('https://raw.githubusercontent.com/tiago-peres/immersion/master/Platforms_dataset.csv')

fig = px.scatter_3d(df, x='Functionality ', y='Accessibility', z='Immersion', color='Platforms')

grey = [[0,'#C0C0C0'],[1,'#C0C0C0']]

zero_pt = pd.Series([0])
z = zero_pt.append(df['Immersion'], ignore_index = True).reset_index(drop = True)
y = zero_pt.append(df['Accessibility'], ignore_index = True).reset_index(drop = True)
x = zero_pt.append(df['Functionality '], ignore_index = True).reset_index(drop = True)

length_data = len(z)
z_plane_pos = 66.5*np.ones((length_data,length_data))

fig.add_trace(go.Surface(x=x, y=y, z=z_plane_pos, colorscale=grey,  showscale=False))
fig.add_trace(go.Surface(x=x.apply(lambda x: 15.69), y=y, z = np.array([z]*length_data), colorscale= grey, showscale=False))
fig.add_trace(go.Surface(x=x, y= y.apply(lambda x: 55), z =  np.array([z]*length_data).transpose(), colorscale=grey, showscale=False))

fig.update_layout(scene = dict(
        xaxis = dict(nticks=4, range=[0,31.38],),
        yaxis = dict(nticks=4, range=[0,110],),
        zaxis = dict(nticks=4, range=[0,133],),),
        legend_orientation="h",margin=dict(l=0, r=0, b=0, t=0))

可以在 Google Colab 中打开,产生以下输出

正如您所看到的,平面没有填满整个轴空间,它们应该遵守轴范围。换句话说,飞机

  • z=66.5 - 应该存在于 x 中的 [0, 31.38] 和 y 中的 [0, 110] 之间
  • x=15.59 - 应该存在于 y 中的 [0, 110] 和 z 中的 [0, 133] 之间
  • y=55 - 应存在于 x 中的 [0, 31.38] 和 z 中的 [0, 133] 之间

那怎么办呢?


有了这个新调整 https://github.com/tiago-peres/immersion/blob/master/platforms_v3.ipynb,

import plotly.express as px
import pandas as pd
import plotly.graph_objects as go
import numpy as np

df = pd.read_csv('https://raw.githubusercontent.com/tiago-peres/immersion/master/Platforms_dataset.csv')

fig = px.scatter_3d(df, x='Functionality ', y='Accessibility', z='Immersion', color='Platforms')

grey = [[0,'#C0C0C0'],[1,'#C0C0C0']]

zero_pt = pd.Series([0])
z1 = np.arange(0, 134, 1)
print(z1)
y1 = np.arange(0, 111, 1)
print(z1)
x1 = np.arange(0, 32.38, 1)
print(z1)
z = zero_pt.append(df['Immersion'], ignore_index = True).reset_index(drop = True)
y = zero_pt.append(df['Accessibility'], ignore_index = True).reset_index(drop = True)
x = zero_pt.append(df['Functionality '], ignore_index = True).reset_index(drop = True)
print(zero_pt)
print(z)

test1 = pd.Series([133])
test = z.append(test1)

length_data1 = len(z1)
z_plane_pos = 66.5*np.ones((length_data1,length_data1))


length_data2 = len(y1)
y_plane_pos = 55*np.ones((length_data2,length_data2))


length_data3 = len(x1)
x_plane_pos = 15.69*np.ones((length_data3,length_data3))

fig.add_trace(go.Surface(x=x1, y=y1, z=z_plane_pos, colorscale=grey,  showscale=False))
fig.add_trace(go.Surface(x=x.apply(lambda x: 15.69), y=y1, z = np.array([test]*length_data1), colorscale= grey, showscale=False))
fig.add_trace(go.Surface(x=x1, y= y.apply(lambda x: 55), z =  np.array([test]*length_data1).transpose(), colorscale=grey, showscale=False))

fig.update_layout(scene = dict(
        xaxis = dict(nticks=4, range=[0,31.38],),
        yaxis = dict(nticks=4, range=[0,110],),
        zaxis = dict(nticks=4, range=[0,133],),),
        legend_orientation="h",margin=dict(l=0, r=0, b=0, t=0))

几乎完成了工作,但平面 x=15.59 和 y=55 在沉浸中不会达到最大 133


问题是我绘制的数组形状不正确。

通过正确地分割创建输入数组和绘图的位,能够发现这一点,从而使输入数组(用于绘图)具有正确的大小和适当的内容。

import plotly.express as px
import pandas as pd
import plotly.graph_objects as go
import numpy as np

df = pd.read_csv('https://raw.githubusercontent.com/tiago-peres/immersion/master/Platforms_dataset.csv')

zero_pt = pd.Series([0])
z1 = np.arange(0, 134, 1)
y1 = np.arange(0, 111, 1)
x1 = np.arange(0, 32.38, 1)
z = zero_pt.append(df['Immersion'], ignore_index = True).reset_index(drop = True)
y = zero_pt.append(df['Accessibility'], ignore_index = True).reset_index(drop = True)
x = zero_pt.append(df['Functionality '], ignore_index = True).reset_index(drop = True)

test1 = pd.Series([133])
test = z.append(test1)

length_data1 = len(z1)
z_plane_pos = 66.5*np.ones((length_data1,length_data1))
length_data2 = len(y1)
y_plane_pos = 55*np.ones((length_data2,length_data2))
length_data3 = len(x1)
x_plane_pos = 15.69*np.ones((length_data3,length_data3))

xvals = x.apply(lambda x: 15.69)
xvals2 = x1
yvals = y1
yvals2 = y.apply(lambda x: 55)
zvals = np.zeros((len(yvals), len(xvals)))
zvals[:, -1] = 133 #  np.array([test]*length_data2)
zvals2 = np.zeros((len(yvals2), len(xvals2)))
zvals2[-1, :] = 133

fig = px.scatter_3d(df, x='Functionality ', y='Accessibility', z='Immersion', color='Platforms')
grey = [[0,'#C0C0C0'],[1,'#C0C0C0']]

fig.add_trace(go.Surface(x=x1, y=y1, z=z_plane_pos, colorscale=grey,  showscale=False))
fig.add_trace(go.Surface(x=xvals, y=yvals, z = zvals, colorscale= grey, showscale=False))
fig.add_trace(go.Surface(x=xvals2, y=yvals2, z = zvals2, colorscale=grey, showscale=False))

fig.update_layout(scene = dict(
        xaxis = dict(nticks=4, range=[0,31.38],),
        yaxis = dict(nticks=4, range=[0,110],),
        zaxis = dict(nticks=4, range=[0,133],),),
        legend_orientation="h",margin=dict(l=0, r=0, b=0, t=0))

在这里查看 https://github.com/tiago-peres/immersion/blob/master/octant_article.ipynb.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Plotly 中增加飞机的大小 的相关文章

随机推荐

  • 使用 sympy 逐步微分

    我正在尝试制作一个 python proram 来查找导数和积分以及展示如何进行 到目前为止 我发现有一个integral steps函数返回所使用的步骤 但我还没有找到等效的微分函数 有谁知道是否有等效的 如果没有 您对如何找到找到导数所
  • 根据属性值动态地将对象数组分成组[重复]

    这个问题在这里已经有答案了 我在尝试着动态地根据属性值将对象数组拆分为组 这是输入的示例 input name john location first name steve location first name paul location
  • 在 Visual Studio 中调试多线程程序时“单步执行”

    One thing that annoys me when debugging programs in Visual Studio 2005 in my case is that when I use step over by pressi
  • 使用js从网站下载或仅保存图像文件

    我想使用 JavaScript 从网站下载或保存图像文件 纯粹的编码本身 因为我想下载近1000个jpeg 所以我想编写一个函数来调用和下载这些图像 URL 可用 我想从中下载特定图像 请指导有关此事 文件网址 http www b2hp
  • 如何在 Jupyter 中使用 JavaScript 选择当前单元格?

    我有一个包含 JavaScript 代码的笔记本单元格 我希望代码能够选择这个特定的单元格 不幸的是 get selected cell取决于我是就地执行单元格 还是执行并选择下面的单元格 Example javascript var ce
  • Android Linkify 文本 - 单一文本视图中的 Spannable 文本 - 就像 Twitter 推文一样

    我有一个 textView 和类似的文本 这是简单的文本KeyWord和Link浏览 在上面的文字中我想做 单击链接即可打开该 URL AND 单击该关键字在我的应用程序中打开一个新活动 also 甚至整个 TextView 都有一个单击事
  • 角度材质工具栏阴影

    我是材料2新手 我试图将主应用程序工具栏固定在屏幕顶部 问题是标高无法正常工作 内容隐藏了工具栏的阴影 我 这是我的 HTML 代码 app content height calc 100 64px overflow auto
  • Quartz属性文件传入环境变量

    我正在尝试将环境变量添加到我的石英属性文件中 但它没有正确加载 这是我的quartz properties org quartz scheduler instanceName scheduler org quartz scheduler i
  • 使用 Mongoose 更新字段子集

    当仅指定 MongoDB 文档的部分字段时 如何使用 Mongoose 更新该文档 即更新指定字段 但保留任何其他现有字段不变 在以下路由处理程序中 用户可以选择要提供的字段 以下作品有效 但使用if感觉报表不是特别大 有更优雅的解决方案吗
  • AWK:打印一个字段中具有最大值的所有行每个其他字段,包括具有最大值和多个列的相同行

    我很感激许多贡献者迅速提供了许多解决方案 AWK 打印一个字段中具有最大值的所有行每个其他字段 包括具有最大值的相同行 https stackoverflow com questions 75392860 awk print all row
  • 在 Alpine 中安装旧版本的软件包

    最近 9 月 5 日 Alpine Linux 软件包存储库已更新为 postgresql client 12 4 我在 Dockerfile 中引用版本 12 3 apk add postgresql client 12 3 现在那个版本
  • 我什么时候应该担心对齐问题?

    我最近了解了一些关于对齐的知识 但我不确定在哪些情况下它会成为问题 有两种情况我想知道 第一个是使用数组时 struct Foo char data 3 size is 3 my arch is 64 bit 8 bytes Foo arr
  • 将 .sort 与 PyMongo 一起使用

    使用 PyMongo 当我尝试检索按 数字 和 日期 字段排序的对象时 如下所示 db test find number gt 1 sort number 1 date 1 我收到此错误 TypeError if no direction
  • 内核模块和SCHED_RR线程的优先级

    我有一个嵌入式 Linux 平台 Beagleboard 运行 Angstrom Linux 连接了两个设备 通过 USB 连接的激光测距仪 Hokuyo UTM 30 通过 SPI 连接的定制外部板 我们编写了一个Linux内核模块 负责
  • python中逆ERF函数的命令[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 在Python中计算函数的逆误差函数 erf 的命令是什么 需要导入哪个模块 For the inverse误差函数 scipy speci
  • Highcharts / Highstock 阶梯线没有垂直“过渡”线?

    是否可以省略 方波 线中的垂直线 我想你可以称之为水平线 这是一个例子 实现这种外观的最简单方法是使用带有自定义 线 符号的散点图 define a custom line symbol Highcharts SVGRenderer pro
  • 免费的非消耗性应用内购买,包含 Apple 服务器上托管的内容

    包含 Apple 服务器上托管内容的非消耗性应用内购买是否可以免费 我在文档中找不到任何有关此内容的信息 并且由于您可以在 iTunes connect 中将应用内购买设置为免费 所以我认为这是可能的 我在 iTunes connect 上
  • 创建反向剪辑路径 - CSS 或 SVG

    我正在尝试创建本质上与 CSS 剪辑路径相反的内容 使用 Clip path 时 图像或 div 会被剪切 以便仅保留您指定的形状 而背景的其余部分将被有效删除 我希望这样 如果我剪辑一个形状 它基本上会在最上层打一个洞并删除形状 而不是背
  • EntityFramework Core - 复制实体并将其放回数据库

    是否有最佳实践来复制实体 根据用户输入对其进行一些更改 然后将其重新插入数据库 其他一些 Stackoverflow 线程提到 即使数据库中存在相同的主键 EF 也会为您处理插入新对象 但我不太确定 EF Core 是如何处理它的 每当我尝
  • 如何在 Plotly 中增加飞机的大小

    Got the 以下代码 https github com tiago peres immersion blob master platforms v2 ipynb import pandas as pd import plotly gra