- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用 matplotlib 库绘制梁的应力。
我已经使用公式计算并绘制了它作为示例:
如图 1 所示,您会看到绿色光束在元素 3 和元素 8 处具有更大的应力,因此如果我用彩虹渐变填充颜色,蓝色光束的整体颜色将相同,但绿色光束将具有元素 3 和 8 的不同颜色将比其他元素更多地进入红色一侧。
这是我的一些代码。将 matplotlib.pyplot 导入为 plt 将 matplotlib 导入为 mpl
node_coordinate = {1: [0.0, 1.0], 2: [0.0, 0.0], 3: [4.018905, 0.87781], 4: [3.978008, -0.1229], 5: [1.983549, -0.038322], 6: [2.013683, 0.958586], 7: [3.018193, 0.922264],
8: [2.979695, -0.079299], 9: [1.0070439, 0.989987], 10: [0.9909098, -0.014787999999999999]}
element_stress = {'1': 0.2572e+01, '2': 0.8214e+00, '3': 0.5689e+01, '4': -0.8214e+00, '5': -0.2572e+01, '6': -0.4292e+01, '7': 0.4292e+01, '8': -0.5689e+01}
cmap = mpl.cm.jet
fig = plt.figure(figsize=(8, 2))
ax1 = fig.add_axes([0.05, 0.80, 0.9, 0.15])
ax2 = fig.add_axes([0.05, 0.4, 0.9, 0.15])
# ax1 = fig.add_axes([0.2572e+01, 0.8214e+00, 0.5689e+01, -0.8214e+00, -0.2572e+01, -0.4292e+01, 0.4292e+01, -0.5689e+01])
norm = mpl.colors.Normalize(vmin=0, vmax=1)
cb1 = mpl.colorbar.ColorbarBase(ax1, cmap=cmap, norm=norm, orientation='vertical')
cb2 = mpl.colorbar.ColorbarBase(ax2, cmap=cmap, norm=norm, orientation='horizontal')
plt.show()
你会看到我知道所有的节点坐标以及元素的应力值。
附:抱歉我的语法,我不是母语。
谢谢。寻求建议。
最佳答案
关注此example ,我想这就是您正在寻找的:
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.tri as tri
import numpy as np
node_coordinate = {1: [0.0, 1.0], 2: [0.0, 0.0], 3: [4.018905, 0.87781],
4: [3.978008, -0.1229], 5: [1.983549, -0.038322],
6: [2.013683, 0.958586], 7: [3.018193, 0.922264],
8: [2.979695, -0.079299], 9: [1.0070439, 0.989987],
10: [0.9909098, -0.014787999999999999]}
element_stress = {1: 0.2572e+01, 2: 0.8214e+00, 3: 0.5689e+01,
4: -0.8214e+00, 5: -0.2572e+01, 6: -0.4292e+01,
7: 0.4292e+01, 8: -0.5689e+01}
n = len(element_stress.keys())
x = np.empty(n)
y = np.empty(n)
d = np.empty(n)
for i in element_stress.keys():
x[i-1] = node_coordinate[i][0]
y[i-1] = node_coordinate[i][1]
d[i-1] = element_stress[i]
triang = tri.Triangulation(x, y)
cmap = mpl.cm.jet
fig = plt.figure(figsize=(8, 4))
ax1 = fig.add_axes([0.05, 0.80, 0.9, 0.15])
ax1.tricontourf(triang, d, cmap=cmap)
ax2 = fig.add_axes([0.05, 0.4, 0.9, 0.15])
x_2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y_2 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
d_2 = x_2[:]
triang_2 = tri.Triangulation(x_2, y_2)
ax2.tricontourf(triang_2, d_2, cmap=cmap)
fig.show()
添加第二个示例是为了澄清,因为从给定数据获得的图表与从 Comsol 获得的图表不同。
关于python - 如何使用 matplotlib 绘制 2D 梯度(彩虹)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43823686/
我有以下问题:写一个网页,上面有一个使用渐变颜色构建的彩虹。彩虹应倾斜一定 Angular (不应完全水平),左侧彩虹的宽度应小于右侧彩虹的宽度。 我不知道如何做宽度的部分。谁能帮帮我? #grad1
我只想使用 CSS 来创建彩虹。以下是所需内容的图片。 这是我的代码(到目前为止): * { margin: 0; padding: 0; } #r { height: 80vw; w
伴随每年 LGBT 骄傲月的到来,各大品牌都会纷纷站出来为他们推出 “Pride” 系列产品,以此表示支持。 IT之家昨日报道,苹果watchOS 6.2.5 Beta5新增4款彩虹表盘。而就
与这个问题相关 css rainbow built using gradient colors 有没有办法通过使用多个 div 而不是一个来做到这一点? 您可能会问,为什么只用一个就可以做到这一点,出
有没有一种方法可以在 rainbows/unicorn 中同时启动 faye 和 rails 应用程序。 现在我正在使用 rainbows 启动 faye/private_pub 应用程序,但也想用它
我尝试使用 matplotlib 库绘制梁的应力。 我已经使用公式计算并绘制了它作为示例: 如图 1 所示,您会看到绿色光束在元素 3 和元素 8 处具有更大的应力,因此如果我用彩虹渐变填充颜色,蓝色
我是一名优秀的程序员,十分优秀!