Skip to content

Commit 4182325

Browse files
adamnschFlorentinD
andcommitted
WIP: Add functionality for continuous color mapping
Co-Authored-By: Florentin Dörre <florentin.dorre@neotechnology.com>
1 parent 5b9da56 commit 4182325

3 files changed

Lines changed: 310 additions & 9 deletions

File tree

python-wrapper/src/neo4j_viz/colors.py

Lines changed: 267 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,19 @@
11
from collections.abc import Iterable
2+
from enum import Enum
23
from typing import Any, Union
34

45
from pydantic_extra_types.color import ColorType
56

67
ColorsType = Union[dict[Any, ColorType], Iterable[ColorType]]
78

9+
10+
class PropertyType(Enum):
11+
DISCRETE = "discrete"
12+
CONTINUOUS = "continuous"
13+
14+
815
# Comes from https://neo4j.design/40a8cff71/p/5639c0-color/t/page-5639c0-79109681-33
9-
neo4j_colors = [
16+
neo4j_colors_discrete = [
1017
"#FFDF81",
1118
"#C990C0",
1219
"#F79767",
@@ -20,3 +27,262 @@
2027
"#DA7294",
2128
"#579380",
2229
]
30+
_neo4j_colors_continuous_base = ["#FFDF81", "#C990C0"]
31+
neo4j_colors_continuous = [
32+
(1.0, 0.8745098039215686, 0.5058823529411764),
33+
(0.9991695501730103, 0.8732948865820838, 0.5068512110726643),
34+
(0.9983391003460208, 0.872079969242599, 0.5078200692041522),
35+
(0.9975086505190311, 0.8708650519031141, 0.5087889273356401),
36+
(0.9966782006920415, 0.8696501345636294, 0.509757785467128),
37+
(0.995847750865052, 0.8684352172241445, 0.5107266435986159),
38+
(0.9950173010380623, 0.8672202998846598, 0.5116955017301038),
39+
(0.9941868512110726, 0.8660053825451749, 0.5126643598615916),
40+
(0.9933564013840831, 0.8647904652056901, 0.5136332179930796),
41+
(0.9925259515570934, 0.8635755478662053, 0.5146020761245674),
42+
(0.9916955017301038, 0.8623606305267205, 0.5155709342560554),
43+
(0.9908650519031141, 0.8611457131872357, 0.5165397923875432),
44+
(0.9900346020761246, 0.8599307958477509, 0.5175086505190312),
45+
(0.9892041522491349, 0.858715878508266, 0.518477508650519),
46+
(0.9883737024221453, 0.8575009611687813, 0.519446366782007),
47+
(0.9875432525951557, 0.8562860438292964, 0.5204152249134948),
48+
(0.9867128027681661, 0.8550711264898117, 0.5213840830449826),
49+
(0.9858823529411764, 0.8538562091503268, 0.5223529411764706),
50+
(0.9850519031141869, 0.852641291810842, 0.5233217993079584),
51+
(0.9842214532871972, 0.8514263744713572, 0.5242906574394464),
52+
(0.9833910034602076, 0.8502114571318724, 0.5252595155709342),
53+
(0.982560553633218, 0.8489965397923875, 0.5262283737024221),
54+
(0.9817301038062284, 0.8477816224529028, 0.52719723183391),
55+
(0.9808996539792387, 0.8465667051134179, 0.5281660899653979),
56+
(0.9800692041522492, 0.8453517877739332, 0.5291349480968858),
57+
(0.9792387543252595, 0.8441368704344483, 0.5301038062283737),
58+
(0.9784083044982699, 0.8429219530949634, 0.5310726643598616),
59+
(0.9775778546712802, 0.8417070357554787, 0.5320415224913495),
60+
(0.9767474048442907, 0.8404921184159938, 0.5330103806228373),
61+
(0.975916955017301, 0.839277201076509, 0.5339792387543253),
62+
(0.9750865051903114, 0.8380622837370242, 0.5349480968858131),
63+
(0.9742560553633218, 0.8368473663975394, 0.535916955017301),
64+
(0.9734256055363322, 0.8356324490580546, 0.5368858131487889),
65+
(0.9725951557093425, 0.8344175317185698, 0.5378546712802768),
66+
(0.971764705882353, 0.8332026143790849, 0.5388235294117647),
67+
(0.9709342560553633, 0.8319876970396002, 0.5397923875432525),
68+
(0.9701038062283737, 0.8307727797001153, 0.5407612456747405),
69+
(0.9692733564013841, 0.8295578623606306, 0.5417301038062283),
70+
(0.9684429065743945, 0.8283429450211457, 0.5426989619377163),
71+
(0.9676124567474048, 0.8271280276816609, 0.5436678200692041),
72+
(0.9667820069204153, 0.8259131103421761, 0.5446366782006921),
73+
(0.9659515570934256, 0.8246981930026913, 0.5456055363321799),
74+
(0.965121107266436, 0.8234832756632064, 0.5465743944636678),
75+
(0.9642906574394463, 0.8222683583237217, 0.5475432525951557),
76+
(0.9634602076124568, 0.8210534409842368, 0.5485121107266435),
77+
(0.9626297577854671, 0.8198385236447521, 0.5494809688581315),
78+
(0.9617993079584775, 0.8186236063052672, 0.5504498269896193),
79+
(0.9609688581314879, 0.8174086889657823, 0.5514186851211073),
80+
(0.9601384083044983, 0.8161937716262976, 0.5523875432525951),
81+
(0.9593079584775086, 0.8149788542868128, 0.553356401384083),
82+
(0.9584775086505191, 0.813763936947328, 0.5543252595155709),
83+
(0.9576470588235294, 0.8125490196078431, 0.5552941176470588),
84+
(0.9568166089965398, 0.8113341022683583, 0.5562629757785467),
85+
(0.9559861591695502, 0.8101191849288735, 0.5572318339100346),
86+
(0.9551557093425606, 0.8089042675893887, 0.5582006920415225),
87+
(0.9543252595155709, 0.8076893502499038, 0.5591695501730104),
88+
(0.9534948096885814, 0.8064744329104191, 0.5601384083044982),
89+
(0.9526643598615917, 0.8052595155709342, 0.5611072664359862),
90+
(0.951833910034602, 0.8040445982314495, 0.562076124567474),
91+
(0.9510034602076125, 0.8028296808919646, 0.563044982698962),
92+
(0.9501730103806229, 0.8016147635524798, 0.5640138408304498),
93+
(0.9493425605536332, 0.800399846212995, 0.5649826989619376),
94+
(0.9485121107266435, 0.7991849288735102, 0.5659515570934256),
95+
(0.947681660899654, 0.7979700115340254, 0.5669204152249134),
96+
(0.9468512110726643, 0.7967550941945406, 0.5678892733564014),
97+
(0.9460207612456747, 0.7955401768550557, 0.5688581314878892),
98+
(0.9451903114186851, 0.794325259515571, 0.5698269896193772),
99+
(0.9443598615916955, 0.7931103421760861, 0.570795847750865),
100+
(0.9435294117647058, 0.7918954248366012, 0.571764705882353),
101+
(0.9426989619377163, 0.7906805074971165, 0.5727335640138408),
102+
(0.9418685121107266, 0.7894655901576316, 0.5737024221453287),
103+
(0.941038062283737, 0.7882506728181469, 0.5746712802768166),
104+
(0.9402076124567474, 0.787035755478662, 0.5756401384083045),
105+
(0.9393771626297578, 0.7858208381391772, 0.5766089965397924),
106+
(0.9385467128027681, 0.7846059207996925, 0.5775778546712802),
107+
(0.9377162629757785, 0.7833910034602076, 0.5785467128027681),
108+
(0.9368858131487889, 0.7821760861207228, 0.5795155709342561),
109+
(0.9360553633217993, 0.780961168781238, 0.5804844290657439),
110+
(0.9352249134948096, 0.7797462514417531, 0.5814532871972318),
111+
(0.9343944636678201, 0.7785313341022684, 0.5824221453287197),
112+
(0.9335640138408304, 0.7773164167627835, 0.5833910034602076),
113+
(0.9327335640138408, 0.7761014994232988, 0.5843598615916955),
114+
(0.9319031141868512, 0.7748865820838139, 0.5853287197231833),
115+
(0.9310726643598616, 0.7736716647443291, 0.5862975778546713),
116+
(0.9302422145328719, 0.7724567474048443, 0.5872664359861591),
117+
(0.9294117647058824, 0.7712418300653595, 0.5882352941176471),
118+
(0.9285813148788927, 0.7700269127258746, 0.5892041522491349),
119+
(0.9277508650519031, 0.7688119953863899, 0.5901730103806229),
120+
(0.9269204152249135, 0.767597078046905, 0.5911418685121107),
121+
(0.9260899653979239, 0.7663821607074203, 0.5921107266435985),
122+
(0.9252595155709342, 0.7651672433679354, 0.5930795847750865),
123+
(0.9244290657439447, 0.7639523260284506, 0.5940484429065744),
124+
(0.923598615916955, 0.7627374086889658, 0.5950173010380623),
125+
(0.9227681660899654, 0.7615224913494809, 0.5959861591695501),
126+
(0.9219377162629758, 0.7603075740099962, 0.5969550173010381),
127+
(0.9211072664359862, 0.7590926566705113, 0.5979238754325259),
128+
(0.9202768166089965, 0.7578777393310265, 0.5988927335640138),
129+
(0.919446366782007, 0.7566628219915417, 0.5998615916955017),
130+
(0.9186159169550173, 0.7554479046520569, 0.6008304498269896),
131+
(0.9177854671280277, 0.754232987312572, 0.6017993079584775),
132+
(0.916955017301038, 0.7530180699730873, 0.6027681660899654),
133+
(0.9161245674740485, 0.7518031526336024, 0.6037370242214533),
134+
(0.9152941176470588, 0.7505882352941177, 0.6047058823529412),
135+
(0.9144636678200692, 0.7493733179546328, 0.605674740484429),
136+
(0.9136332179930796, 0.748158400615148, 0.6066435986159169),
137+
(0.91280276816609, 0.7469434832756632, 0.6076124567474048),
138+
(0.9119723183391003, 0.7457285659361784, 0.6085813148788927),
139+
(0.9111418685121107, 0.7445136485966936, 0.6095501730103806),
140+
(0.9103114186851211, 0.7432987312572088, 0.6105190311418685),
141+
(0.9094809688581315, 0.7420838139177239, 0.6114878892733564),
142+
(0.9086505190311418, 0.7408688965782391, 0.6124567474048442),
143+
(0.9078200692041523, 0.7396539792387543, 0.6134256055363322),
144+
(0.9069896193771626, 0.7384390618992696, 0.61439446366782),
145+
(0.906159169550173, 0.7372241445597847, 0.615363321799308),
146+
(0.9053287197231834, 0.7360092272202999, 0.6163321799307958),
147+
(0.9044982698961938, 0.7347943098808151, 0.6173010380622838),
148+
(0.9036678200692041, 0.7335793925413303, 0.6182698961937716),
149+
(0.9028373702422146, 0.7323644752018454, 0.6192387543252595),
150+
(0.9020069204152249, 0.7311495578623606, 0.6202076124567474),
151+
(0.9011764705882352, 0.7299346405228758, 0.6211764705882352),
152+
(0.9003460207612457, 0.7287197231833911, 0.6221453287197232),
153+
(0.899515570934256, 0.7275048058439062, 0.623114186851211),
154+
(0.8986851211072664, 0.7262898885044213, 0.624083044982699),
155+
(0.8978546712802769, 0.7250749711649366, 0.6250519031141868),
156+
(0.8970242214532872, 0.7238600538254517, 0.6260207612456747),
157+
(0.8961937716262975, 0.722645136485967, 0.6269896193771626),
158+
(0.895363321799308, 0.7214302191464821, 0.6279584775086505),
159+
(0.8945328719723183, 0.7202153018069973, 0.6289273356401384),
160+
(0.8937024221453287, 0.7190003844675125, 0.6298961937716263),
161+
(0.8928719723183391, 0.7177854671280277, 0.6308650519031141),
162+
(0.8920415224913495, 0.7165705497885428, 0.631833910034602),
163+
(0.8912110726643598, 0.7153556324490581, 0.6328027681660899),
164+
(0.8903806228373703, 0.7141407151095732, 0.6337716262975779),
165+
(0.8895501730103806, 0.7129257977700885, 0.6347404844290657),
166+
(0.888719723183391, 0.7117108804306036, 0.6357093425605536),
167+
(0.8878892733564013, 0.7104959630911187, 0.6366782006920415),
168+
(0.8870588235294118, 0.709281045751634, 0.6376470588235295),
169+
(0.8862283737024221, 0.7080661284121492, 0.6386159169550173),
170+
(0.8853979238754325, 0.7068512110726644, 0.6395847750865051),
171+
(0.8845674740484429, 0.7056362937331796, 0.6405536332179931),
172+
(0.8837370242214533, 0.7044213763936947, 0.641522491349481),
173+
(0.8829065743944636, 0.7032064590542099, 0.6424913494809689),
174+
(0.882076124567474, 0.7019915417147251, 0.6434602076124567),
175+
(0.8812456747404844, 0.7007766243752402, 0.6444290657439447),
176+
(0.8804152249134948, 0.6995617070357555, 0.6453979238754325),
177+
(0.8795847750865051, 0.6983467896962707, 0.6463667820069203),
178+
(0.8787543252595156, 0.6971318723567859, 0.6473356401384083),
179+
(0.8779238754325259, 0.695916955017301, 0.6483044982698962),
180+
(0.8770934256055363, 0.6947020376778162, 0.6492733564013841),
181+
(0.8762629757785467, 0.6934871203383314, 0.6502422145328719),
182+
(0.8754325259515571, 0.6922722029988466, 0.6512110726643598),
183+
(0.8746020761245674, 0.6910572856593618, 0.6521799307958478),
184+
(0.8737716262975779, 0.689842368319877, 0.6531487889273356),
185+
(0.8729411764705882, 0.6886274509803921, 0.6541176470588235),
186+
(0.8721107266435986, 0.6874125336409074, 0.6550865051903114),
187+
(0.871280276816609, 0.6861976163014225, 0.6560553633217993),
188+
(0.8704498269896194, 0.6849826989619376, 0.6570242214532872),
189+
(0.8696193771626297, 0.6837677816224529, 0.657993079584775),
190+
(0.8687889273356402, 0.6825528642829681, 0.658961937716263),
191+
(0.8679584775086505, 0.6813379469434833, 0.6599307958477508),
192+
(0.8671280276816609, 0.6801230296039984, 0.6608996539792388),
193+
(0.8662975778546713, 0.6789081122645136, 0.6618685121107266),
194+
(0.8654671280276817, 0.6776931949250289, 0.6628373702422146),
195+
(0.864636678200692, 0.676478277585544, 0.6638062283737024),
196+
(0.8638062283737025, 0.6752633602460593, 0.6647750865051902),
197+
(0.8629757785467128, 0.6740484429065744, 0.6657439446366782),
198+
(0.8621453287197232, 0.6728335255670895, 0.6667128027681661),
199+
(0.8613148788927336, 0.6716186082276048, 0.667681660899654),
200+
(0.860484429065744, 0.6704036908881199, 0.6686505190311418),
201+
(0.8596539792387543, 0.6691887735486352, 0.6696193771626298),
202+
(0.8588235294117648, 0.6679738562091504, 0.6705882352941176),
203+
(0.8579930795847751, 0.6667589388696655, 0.6715570934256055),
204+
(0.8571626297577855, 0.6655440215301807, 0.6725259515570934),
205+
(0.8563321799307958, 0.6643291041906959, 0.6734948096885813),
206+
(0.8555017301038061, 0.663114186851211, 0.6744636678200692),
207+
(0.8546712802768166, 0.6618992695117263, 0.6754325259515571),
208+
(0.853840830449827, 0.6606843521722414, 0.676401384083045),
209+
(0.8530103806228373, 0.6594694348327567, 0.6773702422145329),
210+
(0.8521799307958478, 0.6582545174932718, 0.6783391003460207),
211+
(0.8513494809688581, 0.657039600153787, 0.6793079584775086),
212+
(0.8505190311418684, 0.6558246828143022, 0.6802768166089965),
213+
(0.8496885813148789, 0.6546097654748173, 0.6812456747404845),
214+
(0.8488581314878892, 0.6533948481353326, 0.6822145328719723),
215+
(0.8480276816608996, 0.6521799307958478, 0.6831833910034601),
216+
(0.84719723183391, 0.6509650134563629, 0.6841522491349481),
217+
(0.8463667820069204, 0.6497500961168781, 0.6851211072664359),
218+
(0.8455363321799307, 0.6485351787773933, 0.6860899653979239),
219+
(0.8447058823529412, 0.6473202614379086, 0.6870588235294117),
220+
(0.8438754325259515, 0.6461053440984237, 0.6880276816608997),
221+
(0.8430449826989619, 0.6448904267589388, 0.6889965397923875),
222+
(0.8422145328719723, 0.6436755094194541, 0.6899653979238755),
223+
(0.8413840830449827, 0.6424605920799692, 0.6909342560553633),
224+
(0.840553633217993, 0.6412456747404844, 0.6919031141868512),
225+
(0.8397231833910035, 0.6400307574009996, 0.6928719723183391),
226+
(0.8388927335640138, 0.6388158400615148, 0.6938408304498269),
227+
(0.8380622837370242, 0.6376009227220301, 0.6948096885813149),
228+
(0.8372318339100346, 0.6363860053825452, 0.6957785467128027),
229+
(0.836401384083045, 0.6351710880430603, 0.6967474048442907),
230+
(0.8355709342560553, 0.6339561707035756, 0.6977162629757785),
231+
(0.8347404844290658, 0.6327412533640907, 0.6986851211072664),
232+
(0.8339100346020761, 0.631526336024606, 0.6996539792387543),
233+
(0.8330795847750865, 0.6303114186851211, 0.7006228373702422),
234+
(0.8322491349480969, 0.6290965013456363, 0.7015916955017301),
235+
(0.8314186851211073, 0.6278815840061515, 0.702560553633218),
236+
(0.8305882352941176, 0.6266666666666667, 0.7035294117647058),
237+
(0.829757785467128, 0.6254517493271818, 0.7044982698961938),
238+
(0.8289273356401383, 0.624236831987697, 0.7054671280276816),
239+
(0.8280968858131488, 0.6230219146482122, 0.7064359861591696),
240+
(0.8272664359861591, 0.6218069973087275, 0.7074048442906574),
241+
(0.8264359861591695, 0.6205920799692426, 0.7083737024221453),
242+
(0.8256055363321799, 0.6193771626297577, 0.7093425605536332),
243+
(0.8247750865051903, 0.618162245290273, 0.710311418685121),
244+
(0.8239446366782007, 0.6169473279507882, 0.711280276816609),
245+
(0.8231141868512111, 0.6157324106113033, 0.7122491349480968),
246+
(0.8222837370242214, 0.6145174932718185, 0.7132179930795848),
247+
(0.8214532871972318, 0.6133025759323337, 0.7141868512110726),
248+
(0.8206228373702422, 0.612087658592849, 0.7151557093425606),
249+
(0.8197923875432526, 0.6108727412533641, 0.7161245674740484),
250+
(0.8189619377162629, 0.6096578239138792, 0.7170934256055363),
251+
(0.8181314878892734, 0.6084429065743945, 0.7180622837370242),
252+
(0.8173010380622837, 0.6072279892349096, 0.7190311418685121),
253+
(0.8164705882352941, 0.6060130718954249, 0.72),
254+
(0.8156401384083045, 0.60479815455594, 0.7209688581314879),
255+
(0.8148096885813149, 0.6035832372164551, 0.7219377162629758),
256+
(0.8139792387543252, 0.6023683198769704, 0.7229065743944636),
257+
(0.8131487889273357, 0.6011534025374856, 0.7238754325259515),
258+
(0.812318339100346, 0.5999384851980007, 0.7248442906574395),
259+
(0.8114878892733564, 0.598723567858516, 0.7258131487889273),
260+
(0.8106574394463668, 0.5975086505190312, 0.7267820069204152),
261+
(0.8098269896193772, 0.5962937331795464, 0.7277508650519031),
262+
(0.8089965397923875, 0.5950788158400615, 0.728719723183391),
263+
(0.808166089965398, 0.5938638985005766, 0.7296885813148789),
264+
(0.8073356401384083, 0.5926489811610919, 0.7306574394463667),
265+
(0.8065051903114187, 0.5914340638216071, 0.7316262975778547),
266+
(0.8056747404844291, 0.5902191464821223, 0.7325951557093425),
267+
(0.8048442906574395, 0.5890042291426374, 0.7335640138408304),
268+
(0.8040138408304498, 0.5877893118031526, 0.7345328719723183),
269+
(0.8031833910034601, 0.5865743944636679, 0.7355017301038063),
270+
(0.8023529411764706, 0.585359477124183, 0.7364705882352941),
271+
(0.801522491349481, 0.5841445597846981, 0.7374394463667819),
272+
(0.8006920415224913, 0.5829296424452134, 0.7384083044982699),
273+
(0.7998615916955018, 0.5817147251057286, 0.7393771626297578),
274+
(0.7990311418685121, 0.5804998077662438, 0.7403460207612457),
275+
(0.7982006920415224, 0.5792848904267589, 0.7413148788927335),
276+
(0.7973702422145329, 0.5780699730872741, 0.7422837370242215),
277+
(0.7965397923875432, 0.5768550557477893, 0.7432525951557094),
278+
(0.7957093425605536, 0.5756401384083045, 0.7442214532871972),
279+
(0.7948788927335639, 0.5744252210688197, 0.7451903114186851),
280+
(0.7940484429065744, 0.5732103037293348, 0.746159169550173),
281+
(0.7932179930795847, 0.57199538638985, 0.7471280276816609),
282+
(0.7923875432525951, 0.5707804690503653, 0.7480968858131487),
283+
(0.7915570934256055, 0.5695655517108804, 0.7490657439446367),
284+
(0.7907266435986159, 0.5683506343713955, 0.7500346020761246),
285+
(0.7898961937716262, 0.5671357170319108, 0.7510034602076124),
286+
(0.7890657439446367, 0.565920799692426, 0.7519723183391003),
287+
(0.788235294117647, 0.5647058823529412, 0.7529411764705882),
288+
]

python-wrapper/src/neo4j_viz/visualization_graph.py

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from IPython.display import HTML
88
from pydantic_extra_types.color import Color, ColorType
99

10-
from .colors import ColorsType, neo4j_colors
10+
from .colors import ColorsType, PropertyType, neo4j_colors_discrete, neo4j_colors_continuous
1111
from .node import Node, NodeIdType
1212
from .node_size import RealNumber, verify_radii
1313
from .nvl import NVL
@@ -194,7 +194,35 @@ def resize_nodes(
194194

195195
node.size = size
196196

197-
def color_nodes(self, property: str, colors: Optional[ColorsType] = None, override: bool = False) -> None:
197+
@staticmethod
198+
def _normalize_values(
199+
node_map: dict[NodeIdType, RealNumber], min_max: tuple[float, float] = (0, 1)
200+
) -> dict[NodeIdType, RealNumber]:
201+
unscaled_min_size = min(node_map.values())
202+
unscaled_max_size = max(node_map.values())
203+
unscaled_size_range = float(unscaled_max_size - unscaled_min_size)
204+
205+
new_min_size, new_max_size = min_max
206+
new_size_range = new_max_size - new_min_size
207+
208+
if abs(unscaled_size_range) < 1e-6:
209+
default_node_size = new_min_size + new_size_range / 2.0
210+
new_map = {id: default_node_size for id in node_map}
211+
else:
212+
new_map = {
213+
id: new_min_size + new_size_range * ((nz - unscaled_min_size) / unscaled_size_range)
214+
for id, nz in node_map.items()
215+
}
216+
217+
return new_map
218+
219+
def color_nodes(
220+
self,
221+
property: str,
222+
colors: Optional[ColorsType] = None,
223+
property_type=PropertyType.DISCRETE,
224+
override: bool = False,
225+
) -> None:
198226
"""
199227
Color the nodes in the graph based on a property.
200228
@@ -211,7 +239,14 @@ def color_nodes(self, property: str, colors: Optional[ColorsType] = None, overri
211239
Whether to override existing colors of the nodes, if they have any.
212240
"""
213241
if colors is None:
214-
colors = neo4j_colors
242+
if property_type == PropertyType.DISCRETE:
243+
colors = neo4j_colors_discrete
244+
else:
245+
start_colors = neo4j_colors_continuous
246+
node_map = {
247+
node.id: getattr(node, property) for node in self.nodes if getattr(node, property) is not None
248+
}
249+
normalized_map = self._normalize_values(node_map)
215250

216251
if isinstance(colors, dict):
217252
self._color_nodes_dict(property, colors, override)

0 commit comments

Comments
 (0)