Skip to content
This repository was archived by the owner on Apr 19, 2026. It is now read-only.

Commit 85c7faa

Browse files
committed
update
1 parent 28d6faa commit 85c7faa

File tree

7 files changed

+21
-12
lines changed

7 files changed

+21
-12
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,3 +173,5 @@ test/quafu_test
173173
originq_cloud_config.json
174174
good_circuits.txt
175175
bad_circuits.txt
176+
*.png
177+
*.pdf

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.30)
1+
cmake_minimum_required(VERSION 3.26)
22
project(QPandaLite)
33
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/QPandaLiteCpp/src
44
${CMAKE_CURRENT_SOURCE_DIR}/QPandaLiteCpp/Thirdparty

QPandaLiteCpp/Pybinder/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.30)
1+
cmake_minimum_required(VERSION 3.26)
22
project(QPandaLitePy)
33

44
set(LIB_MahjongPy ${PROJECT_NAME})

QPandaLiteCpp/src/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.30)
1+
cmake_minimum_required(VERSION 3.26)
22
project(QPandaLiteCppCore)
33
file(GLOB_RECURSE QPandaLiteCppCoreSrc_H ${CMAKE_CURRENT_SOURCE_DIR}/*.h)
44
file(GLOB_RECURSE QPandaLiteCppCoreSrc ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)

QPandaLiteCpp/test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.30)
1+
cmake_minimum_required(VERSION 3.26)
22
project(QPandaLiteTest)
33
file(GLOB_RECURSE QPandaLiteTestSrc ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
44
add_executable(${PROJECT_NAME} ${QPandaLiteTestSrc})

qpandalite/test/test_transpile.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,17 @@
11
import qpandalite.simulator as qsim
22
from qpandalite.test._utils import qpandalite_test
3+
from qpandalite.transpiler import plot_time_line
4+
import json
5+
6+
@qpandalite_test('Test Transpile.PlotTimeLine')
7+
def run_test_transpile_plot_time_line():
8+
pulse_sequence = '''[{"RPhi":[25,0.0,90.0,0]},{"RPhi":[26,180.0,90.0,0]},{"RPhi":[27,180.0,90.0,0]},{"RPhi":[28,180.0,90.0,0]},{"RPhi":[29,0.0,90.0,0]},{"RPhi":[25,176.8084520478672,90.0,30]},{"RPhi":[26,359.1759778286208,90.0,30]},{"RPhi":[27,305.14741508480088,90.0,30]},{"RPhi":[28,339.4245991356841,90.0,30]},{"RPhi":[29,115.70026006739696,90.0,30]},{"RPhi":[26,269.17597782862085,90.0,60]},{"RPhi":[28,249.4245991356841,90.0,60]},{"CZ":[25,26,90]},{"CZ":[27,28,90]},{"RPhi":[26,149.06068473909554,90.0,130]},{"RPhi":[28,321.1126575441533,90.0,130]},{"RPhi":[25,109.35370990881589,90.0,160]},{"RPhi":[27,19.476598469673438,90.0,160]},{"RPhi":[29,205.700260067397,90.0,160]},{"RPhi":[25,220.0517189739886,90.0,190]},{"CZ":[26,27,190]},{"CZ":[28,29,190]},{"RPhi":[26,339.0696260425817,90.0,230]},{"RPhi":[27,199.15574210440026,90.0,230]},{"RPhi":[28,42.29155136981484,90.0,230]},{"RPhi":[29,195.14022698483644,90.0,230]},{"RPhi":[26,156.55175040680769,90.0,260]},{"RPhi":[27,109.15574210440025,90.0,260]},{"RPhi":[28,124.77798548788978,90.0,260]},{"RPhi":[29,105.14022698483645,90.0,260]},{"RPhi":[26,66.55175040680799,90.0,290]},{"RPhi":[27,202.48893592604845,90.0,290]},{"RPhi":[28,214.7779854878898,90.0,290]},{"RPhi":[29,246.7727688542387,90.0,290]},{"CZ":[25,26,320]},{"CZ":[27,28,320]},{"RPhi":[26,306.4364573172824,90.0,360]},{"RPhi":[28,286.4660438963588,90.0,360]},{"RPhi":[25,152.59697683493745,90.0,390]},{"RPhi":[27,96.81811931092088,90.0,390]},{"RPhi":[29,336.7727688542386,90.0,390]},{"RPhi":[25,164.809782146384,90.0,420]},{"CZ":[26,27,420]},{"CZ":[28,29,420]},{"RPhi":[26,316.4453986207685,90.0,460]},{"RPhi":[27,276.4972629456473,90.0,460]},{"RPhi":[28,7.644937722020551,90.0,460]},{"RPhi":[29,326.212735771678,90.0,460]},{"RPhi":[26,334.4785779323604,90.0,490]},{"RPhi":[27,186.4972629456473,90.0,490]},{"RPhi":[28,173.87318722134314,90.0,490]},{"RPhi":[29,236.21273577167805,90.0,490]},{"RPhi":[26,64.47857793236041,90.0,520]},{"RPhi":[27,336.5108538253065,90.0,520]},{"RPhi":[28,263.8731872213429,90.0,520]},{"RPhi":[29,38.34190024631248,90.0,520]},{"CZ":[25,26,550]},{"CZ":[27,28,550]},{"RPhi":[26,304.3632848428349,90.0,590]},{"RPhi":[28,335.5612456298116,90.0,590]},{"RPhi":[25,97.35504000733246,90.0,620]},{"RPhi":[27,230.84003721017914,90.0,620]},{"RPhi":[29,128.3419002463122,90.0,620]},{"RPhi":[25,145.14322682862918,90.0,650]},{"CZ":[26,27,650]},{"CZ":[28,29,650]},{"RPhi":[26,314.37222614632096,90.0,690]},{"RPhi":[27,50.51918084490556,90.0,690]},{"RPhi":[28,236.74013945547297,90.0,690]},{"RPhi":[29,117.78186716375169,90.0,690]},{"RPhi":[26,39.83823846951509,90.0,720]},{"RPhi":[27,320.5191808449052,90.0,720]},{"RPhi":[28,34.098638457970697,90.0,720]},{"RPhi":[29,27.78186716375135,90.0,720]},{"RPhi":[26,129.83823846951578,90.0,750]},{"RPhi":[27,128.09646978610398,90.0,750]},{"RPhi":[28,304.0986384579707,90.0,750]},{"RPhi":[29,108.3855825935067,90.0,750]},{"CZ":[25,26,780]},{"CZ":[27,28,780]},{"RPhi":[26,9.722945379990833,90.0,820]},{"RPhi":[28,15.786696866440052,90.0,820]},{"RPhi":[27,22.425653170975936,90.0,850]},{"RPhi":[29,198.38558259350737,90.0,850]},{"CZ":[26,27,880]},{"CZ":[28,29,880]},{"RPhi":[27,202.1047968057033,90.0,920]},{"RPhi":[29,187.82554951094657,90.0,920]},{"RPhi":[31,270.0,90.0,950]},{"RPhi":[33,270.0,90.0,950]},{"RPhi":[35,270.0,90.0,950]},{"CZ":[25,31,980]},{"CZ":[27,33,980]},{"CZ":[29,35,980]},{"RPhi":[31,249.9016083459824,90.0,1020]},{"RPhi":[33,213.96430671790609,90.0,1020]},{"RPhi":[35,254.2546988715056,90.0,1020]},{"RPhi":[32,270.0,90.0,1050]},{"RPhi":[34,270.0,90.0,1050]},{"RPhi":[36,270.0,90.0,1050]},{"CZ":[26,32,1080]},{"CZ":[28,34,1080]},{"CZ":[30,36,1080]},{"RPhi":[32,305.4484778664446,90.0,1120]},{"RPhi":[34,200.57131474384017,90.0,1120]},{"RPhi":[36,322.85493568251908,90.0,1120]},{"Measure":[[36,35,34,33,32,31,30,29,28,27,26,25],1150]}]'''
9+
10+
data = json.loads(pulse_sequence)
11+
12+
plot_time_line(pulse_sequence)
313

414

5-
@qpandalite_test('Test Transpile')
6-
def run_test_transpile():
7-
pass
815

916
if __name__ == '__main__':
10-
run_test_transpile()
17+
run_test_transpile_plot_time_line()

qpandalite/transpiler/timeline.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,7 @@ def create_time_line_table(layer_dict, qubit_list, time_line):
7474
return time_line_table
7575

7676

77-
def plot_time_line(compiled_prog, taskid,
78-
figure_save_path = Path.cwd() / 'timeline_plot'):
77+
def plot_time_line(compiled_prog, figure_save_path = Path.cwd() / 'timeline_plot'):
7978
format_prog, qubit_list, time_line = format_result(compiled_prog)
8079
time_line_table = create_time_line_table(format_prog, qubit_list, time_line)
8180
depth = len(time_line)
@@ -84,7 +83,7 @@ def plot_time_line(compiled_prog, taskid,
8483
for i in range(1, split_table + 1):
8584
plt.figure(figsize=(width, len(qubit_list)/2))
8685
plt.axis('off')
87-
cmap = {'RPhi90': 'blue', 'RPhi180': 'orange', 'CZ': 'red', 'idle': 'white', 'Measure': 'gray'}
86+
cmap = {'RPhi90': 'lightblue', 'RPhi180': 'orange', 'CZ': 'mistyrose', 'idle': 'white', 'Measure': 'gray'}
8887

8988
if i*20 < depth:
9089
values = time_line_table.values[:, (i-1)*20:i*20]
@@ -94,11 +93,12 @@ def plot_time_line(compiled_prog, taskid,
9493
columns = time_line_table.columns[(i-1)*20:]
9594
cellColours = [[cmap[x.split(' ')[0]] for x in row] for row in values]
9695
table = plt.table(cellText=values, colLabels=columns,
96+
colWidths=[0.05]*len(columns),
9797
rowLabels=time_line_table.index,
9898
loc='center',
9999
cellColours=cellColours)
100100

101101
if not os.path.exists(figure_save_path):
102102
os.mkdir(figure_save_path)
103-
plt.savefig(figure_save_path / f'{taskid} timeline {i}.png')
103+
plt.savefig(figure_save_path / f'timeline {i}.pdf')
104104

0 commit comments

Comments
 (0)