Skip to content

Commit f39c0ca

Browse files
update python scripts
1 parent 71d0811 commit f39c0ca

File tree

2 files changed

+56
-43
lines changed

2 files changed

+56
-43
lines changed

tools/plot_cluster.py

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
import numpy as np
2-
from mpl_toolkits.mplot3d import Axes3D
2+
from mpl_toolkits.mplot3d import Axes3D
33
import matplotlib.pyplot as plt
44
import matplotlib.colors as colors
55
import pandas as pd
66
import argparse
77

88
parser = argparse.ArgumentParser()
9-
parser.add_argument("--inputfile",type=str)
10-
parser.add_argument("--show",type=int,choices=[0,1],default=1)
11-
parser.add_argument("--depth",type=int,default=1)
12-
parser.add_argument("--save",type=str,default="")
9+
parser.add_argument("--inputfile", type=str)
10+
parser.add_argument("--show", type=int, choices=[0, 1], default=1)
11+
parser.add_argument("--depth", type=int, default=1)
12+
parser.add_argument("--save", type=str, default="")
1313

1414
args = parser.parse_args()
1515
inputfile = args.inputfile
1616
depth = args.depth
1717

1818
# First Data
19-
data = (pd.read_csv(inputfile,header=None)).T
19+
data = (pd.read_csv(inputfile, header=None)).T
2020
header = data.iloc[0]
2121
print(header)
22-
data =data[1:]
22+
data = data[1:]
2323
data.columns = header
2424

2525

@@ -31,14 +31,18 @@
3131
fig = plt.figure()
3232
ax = fig.add_subplot(111, projection='3d')
3333

34-
ax.scatter(data["x_0"].tolist(), data["x_1"].tolist(), data["x_2"].tolist(),c=colormap(norm(data[str(depth)].tolist())), marker='o')
35-
34+
if "x_2" in data.columns:
35+
ax.scatter(data["x_0"].tolist(), data["x_1"].tolist(), data["x_2"].tolist(
36+
), c=colormap(norm(data[str(depth)].tolist())), marker='o')
37+
else:
38+
ax.scatter(data["x_0"].tolist(), data["x_1"].tolist(),
39+
c=colormap(norm(data[str(depth)].tolist())), marker='o')
3640

3741
# Output
3842
if args.show:
3943
plt.show()
4044

4145

42-
if args.save!="":
43-
fig.savefig(args.save,bbox_inches = 'tight',
44-
pad_inches = 0)
46+
if args.save != "":
47+
fig.savefig(args.save, bbox_inches='tight',
48+
pad_inches=0)

tools/plot_hmatrix.py

Lines changed: 40 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,69 +6,78 @@
66
import argparse
77

88
parser = argparse.ArgumentParser()
9-
parser.add_argument("--inputfile",type=str)
10-
parser.add_argument("--sizeWorld",type=int,default=1)
11-
parser.add_argument("--show",type=int,choices=[0,1],default=1)
12-
parser.add_argument("--save",type=str,default="")
9+
parser.add_argument("--inputfile", type=str)
10+
parser.add_argument("--show", type=int, choices=[0, 1], default=1)
11+
parser.add_argument("--save", type=str, default="")
1312

1413
args = parser.parse_args()
1514
inputfile = args.inputfile
16-
sizeWorld = args.sizeWorld
1715

1816
# First Data
19-
size = pd.read_csv(inputfile+"_0.csv",nrows=1,header=None)
17+
size = pd.read_csv(inputfile, nrows=1, header=None)
2018
nr = size.iloc[0][0]
2119
nc = size.iloc[0][1]
22-
matrix = np.zeros((nr,nc))
20+
matrix = np.zeros((nr, nc))
2321

2422
# Figure
25-
fig, axes = plt.subplots(1,1)
23+
fig, axes = plt.subplots(1, 1)
2624
axes.xaxis.tick_top()
2725
plt.imshow(matrix)
2826

2927
# Issue: there a shift of one pixel along the y-axis...
30-
shift = axes.transData.transform([(0,0), (1,1)])
31-
shift = shift[1,1] - shift[0,1] # 1 unit in display coords
28+
shift = axes.transData.transform([(0, 0), (1, 1)])
29+
shift = shift[1, 1] - shift[0, 1] # 1 unit in display coords
3230
shift = 0
3331
# 1/shift # 1 pixel in display coords
3432

3533
# Loop
36-
for i in range(0,sizeWorld):
37-
print(i)
38-
data = pd.read_csv(inputfile+"_"+str(i)+".csv",skiprows=1,header=None)
39-
40-
for index, row in data.iterrows():
41-
matrix[np.ix_(range(row[0],row[0]+row[1]),range(row[2],row[2]+row[3]))]=row[4]
42-
rect = patches.Rectangle((row[2]-0.5,row[0]-0.5+shift),row[3],row[1],linewidth=0.75,edgecolor='k',facecolor='none')
43-
axes.add_patch(rect)
44-
if row[4]>=0 and row[3]/float(nc)>0.05 and row[1]/float(nc)>0.05:
45-
axes.annotate(row[4],(row[2]+row[3]/2.,row[0]+row[1]/2.),color="white",size=10, va='center', ha='center')
46-
47-
48-
34+
data = pd.read_csv(inputfile, skiprows=1, header=None)
35+
for index, row in data.iterrows():
36+
matrix[
37+
np.ix_(range(row[0], row[0] + row[1]), range(row[2], row[2] + row[3]))
38+
] = row[4]
39+
rect = patches.Rectangle(
40+
(row[2] - 0.5, row[0] - 0.5 + shift),
41+
row[3],
42+
row[1],
43+
linewidth=0.75,
44+
edgecolor="k",
45+
facecolor="none",
46+
)
47+
axes.add_patch(rect)
48+
if row[4] >= 0 and row[3] / float(nc) > 0.05 and row[1] / float(nc) > 0.05:
49+
axes.annotate(
50+
row[4],
51+
(row[2] + row[3] / 2.0, row[0] + row[1] / 2.0),
52+
color="white",
53+
size=10,
54+
va="center",
55+
ha="center",
56+
)
4957

5058

5159
# Colormap
5260
def truncate_colormap(cmap, minval=0.0, maxval=1.0, n=100):
5361
new_cmap = colors.LinearSegmentedColormap.from_list(
54-
'trunc({n},{a:.2f},{b:.2f})'.format(n=cmap.name, a=minval, b=maxval),
55-
cmap(np.linspace(minval, maxval, n)))
62+
"trunc({n},{a:.2f},{b:.2f})".format(n=cmap.name, a=minval, b=maxval),
63+
cmap(np.linspace(minval, maxval, n)),
64+
)
5665
return new_cmap
5766

58-
cmap = plt.get_cmap('YlGn')
67+
68+
cmap = plt.get_cmap("YlGn")
5969
new_cmap = truncate_colormap(cmap, 0.4, 1)
6070

6171

6272
# Plot
63-
matrix =np.ma.masked_where(0>matrix,matrix)
73+
matrix = np.ma.masked_where(0 > matrix, matrix)
6474
new_cmap.set_bad(color="red")
65-
plt.imshow(matrix,cmap=new_cmap,vmin=0, vmax=10)
75+
plt.imshow(matrix, cmap=new_cmap, vmin=0, vmax=10)
6676

6777
# Output
6878
if args.show:
6979
plt.show()
7080

7181

72-
if args.save!="":
73-
fig.savefig(args.save,bbox_inches = 'tight',
74-
pad_inches = 0)
82+
if args.save != "":
83+
fig.savefig(args.save, bbox_inches="tight", pad_inches=0)

0 commit comments

Comments
 (0)