-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathplot-2d-array-v3.py
More file actions
48 lines (42 loc) · 3.59 KB
/
plot-2d-array-v3.py
File metadata and controls
48 lines (42 loc) · 3.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import plotly.graph_objs as go
import numpy as np
depth = np.array([
[65, 105, 125, 178, 214, 255, 282, 313, 330, 345, 356, 362, 369, 373, 370, 360, 335, 311, 250, 206, 180, 159, 148, 140, 138, 142, 152, 161, 171, 180, 191, 194, 197, 205],
[39, 29, 73, 128, 168, 209, 253, 281, 300, 326, 329, 341, 345, 357, 355, 325, 280, 230, 197, 177, 160, 146, 137, 129, 128, 132, 139, 148, 156, 163, 166, 164, 161, 158],
[13, 23, 43, 62, 98, 133, 161, 187, 222, 253, 270, 292, 311, 314, 282, 233, 199, 174, 157, 153, 146, 136, 127, 119, 118, 125, 133, 140, 148, 156, 161, 166, 175, 180],
[27, 37, 72, 99, 146, 186, 234, 266, 301, 329, 341, 344, 348, 335, 280, 220, 182, 163, 151, 147, 138, 132, 128, 123, 122, 125, 127, 134, 140, 145, 149, 154, 161, 170],
[10, 22, 56, 84, 128, 157, 202, 236, 277, 307, 315, 336, 342, 322, 257, 196, 170, 151, 139, 131, 127, 124, 123, 122, 122, 123, 124, 127, 131, 135, 140, 144, 155, 163],
[11, 25, 52, 70, 102, 136, 178, 213, 231, 258, 279, 294, 294, 272, 216, 180, 158, 143, 131, 126, 121, 120, 122, 124, 123, 123, 123, 124, 126, 129, 133, 142, 151, 158],
[10, 11, 18, 44, 59, 89, 109, 135, 186, 214, 221, 249, 250, 246, 210, 178, 160, 143, 129, 122, 120, 119, 120, 122, 122, 123, 123, 122, 124, 128, 136, 145, 152, 155],
[2, 16, 124, 101, 78, 122, 134, 60, 62, 67, 67, 75, 73, 95, 128, 150, 151, 143, 134, 126, 122, 120, 120, 121, 121, 122, 124, 125, 128, 132, 141, 149, 155, 154],
[-6, -1, 2, 17, 24, 33, 46, 45, 55, 67, 71, 79, 111, 317, 380, 299, 200, 161, 146, 138, 131, 126, 122, 119, 120, 123, 126, 129, 136, 143, 150, 159, 158, 146],
[-3, 9, 3, 12, 23, 34, 39, 60, 62, 72, 92, 99, 110, 111, 127, 146, 158, 159, 152, 143, 138, 130, 124, 121, 121, 124, 128, 134, 141, 149, 157, 163, 156, 139],
[-6, 3, 7, 7, 32, 38, 43, 47, 59, 56, 72, 71, 74, 77, 87, 92, 120, 155, 162, 157, 148, 140, 133, 129, 129, 130, 136, 145, 156, 163, 167, 159, 142, 129],
[-7, 0, -3, 7, 21, 31, 38, 52, 63, 60, 65, 75, 77, 75, 78, 83, 103, 141, 161, 161, 153, 144, 138, 134, 133, 136, 141, 150, 161, 168, 165, 150, 130, 126],
[-8, -3, 4, 13, 30, 28, 39, 53, 57, 67, 67, 64, 65, 77, 75, 74, 90, 102, 135, 159, 161, 155, 149, 147, 144, 148, 154, 161, 167, 161, 140, 118, 109, 103],
[-4, -9, 4, 19, 17, 34, 41, 46, 54, 59, 56, 73, 68, 75, 67, 79, 85, 83, 98, 130, 153, 159, 160, 156, 154, 155, 158, 163, 154, 130, 111, 96, 94, 93],
[-5, 3, 5, 12, 21, 35, 45, 49, 54, 69, 64, 73, 72, 72, 74, 81, 75, 82, 80, 102, 120, 144, 156, 158, 155, 154, 155, 145, 118, 102, 89, 84, 80, 93],
[-2, -2, 5, 11, 24, 33, 42, 45, 58, 65, 66, 76, 70, 66, 72, 64, 72, 76, 77, 79, 87, 100, 123, 136, 136, 134, 122, 104, 89, 87, 75, 78, 80, 92],
[0, 0, 12, 18, 23, 33, 41, 51, 61, 61, 65, 72, 76, 70, 68, 70, 69, 74, 69, 70, 78, 86, 85, 97, 98, 99, 88, 82, 80, 77, 75, 79, 86, 93],
[-4, -1, 2, 24, 32, 33, 44, 52, 51, 66, 66, 70, 68, 68, 61, 72, 76, 70, 69, 70, 70, 68, 71, 80, 75, 73, 75, 73, 69, 71, 70, 72, 73, 92],
[8, 4, 10, 16, 26, 30, 43, 51, 49, 60, 64, 65, 75, 72, 74, 74, 71, 70, 65, 65, 69, 68, 67, 75, 64, 74, 73, 71, 72, 67, 80, 73, 81, 97],
[14, 3, 8, 23, 841, 38, 36, 51, 52, 55, 68, 66, 74, 73, 67, 76, 73, 74, 66, 71, 65, 73, 66, 66, 68, 72, 68, 77, 69, 68, 68, 76, 79, 99],
])
# number of rows
y_len = len(depth)
# length of the first row
x_len = len(depth[0])
print(x_len, y_len)
# Create 2D data
x = np.arange(-5, 5, 0.1)
y = np.arange(-5, 5, 0.1)
X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X**2 + Y**2))
# Create 3D plot
fig = go.Figure(data=[go.Surface(z=Z, x=X, y=Y)])
# Set plot layout
fig.update_layout(title='3D Plot of Highs', autosize=False,
width=500, height=500,
margin=dict(l=65, r=50, b=65, t=90))
# Show plot
# fig.show()