我的数据框如下所示:
Airport ATA Cost Destination Handling Custom Total Cost
0 PRG 599222 11095 20174 630491
1 LXU 364715 11598 11595 387908
2 AMS 401382 23562 16680 441623
3 PRG 599222 11095 20174 630491
Run Code Online (Sandbox Code Playgroud)
使用下面的代码,它给出了堆积的条形图:
df = df.iloc[:, 0:4]
df.plot(x='Airport', kind='barh', stacked=True, title='Breakdown of Costs', mark_right=True)
Run Code Online (Sandbox Code Playgroud)
如何在每个堆叠的条形图上添加总计(以千分之千为单位)?如何为%堆叠条形图中的每个细分添加?
下面我有一个数据帧,显示每辆车 (Vehicle_ID) 将如何以特定序列 (Pos_in_route) 访问不同的地方 (place_id)。
place_id Lat Lon Vehicle_ID Pos_in_route
0 51.4457678 -0.45613 0 0
1 52.497911 -1.903832 0 1
2 52.332395 -1.346753 0 2
0 51.4457678 -0.45613 0 3
0 51.4457678 -0.45613 1 0
4 52.110728 -0.463547 1 1
3 52.276323 -1.579845 1 2
5 52.423667 -0.609697 1 3
0 51.4457678 -0.45613 1 4
Run Code Online (Sandbox Code Playgroud)
现在,我试图根据列 (Pos_in_route) 添加另外两列以显示先前访问过的地点 (prior_lat,prior_lon) 的 GPS 坐标。如果没有位置的先前位置,它将是它自己(即 place_id = 0)
place_id Lat Lon Vehicle_ID Pos_in_route prior_lat prior_lon
0 51.4457678 -0.45613 0 0 51.4457678 -0.45613 …Run Code Online (Sandbox Code Playgroud) 我有一个 3D 装箱模型,它使用绘图来绘制输出图。我注意到绘制了 600+ 个项目,生成 html 文件需要很长时间,文件大小为 89M,这太疯狂了(我怀疑可能存在一些巨大的重复,或者由 \xe2\x80\x9cadd_trace\ 引起) xe2\x80\x9d 方法来绘制单个项目图)。为什么它会产生这么大的文件?如何将大小控制在可接受的水平(不超过 5M,因为我需要在我的网站中渲染它)。非常感谢您的帮助。
\n\n下面是我的完整代码(请跳过模型代码并从绘图代码中查看)
\nfrom py3dbp import Packer, Bin, Item, Painter\nimport time\nimport plotly.graph_objects as go\nfrom plotly.subplots import make_subplots\nimport plotly\nimport pandas as pd\n\nstart = time.time()\nimport numpy as np\n\n# -----------this part is about calculating the 3D bin packing problem to get x,y,z for each items of a bin/container--------------\n###library reference: https://github.com/jerry800416/3D-bin-packing\n\n# init packing function\npacker = Packer()\n# init bin\n# box = Bin(\'40HC-1\', (1203, 235, 259), 18000.0,0,0)\nbox = Bin(\'40HC-1\', (1202.4, 235, 269.7), …Run Code Online (Sandbox Code Playgroud) 例如,我有 1000 个客户位于欧洲,不同纬度和经度。我想找到可以为所有客户提供服务的最少设施数量,受限于必须在 24 小时交付内为每个客户提供服务(这里我使用从设施到客户的最大允许运输距离作为确保 24 小时交付的约束)服务(距离是两个位置之间的直线,根据欧几里德距离/直线计算)。
因此,对于每个只能为特定距离(例如 600 公里)内的客户提供服务的仓库,有什么算法可以帮助我找到为所有客户提供服务所需的最少设施数量,以及它们各自的纬度和经度。下面的附图显示了一个示例。
查找最小仓库及其位置的示例
大家都说Jave是用于大型系统和工程项目的语言,它的运行速度比大多数其他语言都要快得多。我只是将其与另一种基于Agent的建模语言-Netlogo进行了比较,发现Netlog在经典的狼羊模拟模型中比基于Jave的Repast快四倍。两种模型都使用相同的参数进行仿真,并实时运行5秒钟。Netlogo可以模拟8000多个时间步长,而Jave Repast只能执行2600多个时间步长。为什么?
我正在根据实际运营数据对生产计划进行建模。数据为我提供了轮班时间表,如下所示:
shift_start shift_end
0:10 4:00
4:00 6:00
8:00 11:00
11:00 13:30
13:30 17:00
18:30 23:30
Run Code Online (Sandbox Code Playgroud)
或其他格式为:
shift_start shift_end
0100 0400
0400 0600
0800 1100
1100 1330
1330 1700
1830 2330
Run Code Online (Sandbox Code Playgroud)
但是,这两种都不是从netlogo ticks函数中读取的好格式。如何将时间格式自动更改为如下所示的数字:
shift_start shift_end
10 240
240 360
480 660
660 810
810 1020
1110 1410
Run Code Online (Sandbox Code Playgroud)
还是netlogo中有内置功能支持时间读取?
整个数据集如下所示((项目5是班次开始时间,项目6是结束时间))我正在使用csv扩展方法读取整个集合
028W 028W0410 IB 0 1 250 360 0.48 2.78 14.98
028W 028W0800 IB 0 1 480 660 0.54 3.1 18.43
028W 028W1200 IB&OB 0.5 0.5 720 870 0.51 2.58 13.89
028W 028W1430 …Run Code Online (Sandbox Code Playgroud) 我想知道如何使用情节来做同样的事情?
下面是我绘制圆柱体的 matplotlib 函数:
#function to plot the cylinder
def _plotCylinder(self, ax, x, y, z, dx, dy, dz, color='red',mode=2):
""" Auxiliary function to plot a Cylinder """
# plot the two circles above and below the cylinder
p = Circle((x+dx/2,y+dy/2),radius=dx/2,color=color,ec='black')
p2 = Circle((x+dx/2,y+dy/2),radius=dx/2,color=color,ec='black')
ax.add_patch(p)
ax.add_patch(p2)
art3d.pathpatch_2d_to_3d(p, z=z, zdir="z")
art3d.pathpatch_2d_to_3d(p2, z=z+dz, zdir="z")
# plot a circle in the middle of the cylinder
center_z = np.linspace(0, dz, 15)
theta = np.linspace(0, 2*np.pi, 15)
theta_grid, z_grid=np.meshgrid(theta, center_z)
x_grid = dx …Run Code Online (Sandbox Code Playgroud) python ×4
netlogo ×2
pandas ×2
plotly ×2
algorithm ×1
logistics ×1
matplotlib ×1
optimization ×1
time ×1