File: parse-table.conf

package info (click to toggle)
circos-tools 0.23-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster, forky, sid, trixie
  • size: 39,188 kB
  • sloc: perl: 6,551; sh: 56; makefile: 16
file content (389 lines) | stat: -rw-r--r-- 13,197 bytes parent folder | download | duplicates (3)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389

################################################################
#
# This is a fairly complicated configuration file. Take your time in
# experimenting and adjust one thing at a time :)
#
################################################################

max_col_num = 400
max_row_num = 400

# skip this many rows before reading in header and data
skip_rows        = 0

# is there a header line that identifies the columns?
header           = yes

# is there a row that specifies the order of columns in the image?
# - if so, this must be the first line of the header
# - if the line exists (col_order_row=yes), employ the use_col_order_row to toggle whether it is used
col_order_row     = no
use_col_order_row = no

# is there a row that specifies the size of columns in the image?
# - if so, this must be the next line of the header
# - if the line exists (col_size_row=yes), employ the use_col_size_row to toggle whether it is used
col_size_row     = no
use_col_size_row = no

# is there a row that specifies the color of each column segment in the image?
# - if so, this must be the next line of the header
# - if the line exists (col_color_row=yes), employ the use_col_color_row to toggle whether it is used
col_color_row     = no
use_col_color_row = no

# is there a column that specifies the order of rows in the image?
# - if so, this must be the first column
# - if the line exists (row_order_col=yes), employ the use_row_order_col to toggle whether it is used
row_order_col     = no
use_row_order_col = no

# is there a column that specifies the color of each row segment in the image?
# - if so, this must be the second column
# - if the line exists (row_color_col=yes), employ the use_row_color_col to toggle whether it is used
row_color_col     = no
use_row_color_col = no

# if you do not have a column/row that explicitly defines order
# of segments in the image, you can set this here. Use one (or more) of 
# these values to specify how segments should be ordered.
# - row_major (row segments first, then column)
# - col_major (col segments first, then row)
# - ascii     (asciibetic order)
# - row_size  (total of rows for the segment - useful if the segment has both row and column contributions)
# - col_size  (total of colums for the segment - useful if the segment has both row and column contributions)
# - row_to_col_ratio (ratio of total of rows to columns for the segment)
# - col_to_row_ratio (ratio of total of rows to columns for the segment)
# - size_asc  (size, in ascending order)
# - size_desc (size, in descending order)

#segment_order = row_to_col_ratio,size_desc # col_major,size_desc
segment_order = size_desc
#segment_order = ascii
#segment_order = file:etc/order-by-table-remapped.txt
#segment_order  = size_desc,row_to_col_ratio
segment_color_order = ascii

# values for segments can be normalized if the use_segment_normalization is set to yes
use_segment_normalization = no

# the normalization function can be one of the following, and is applied to
# all values that correspond to the segment's label
# total - sum of cell values for the segment label (row and col)
# average - average of cell values for the segment label (row and col)
# row_total, row_average - sum or average for cell values for the segment row
# col_total, col_average - sum or average for cell values for the segment col
# row_size, col_size, total_size - based on the optional size column (see col_size_row and row_size_col above)
# VALUE - segments are scaled to a constant VALUE (e.g. 1000)
segment_normalization_function = 1000

# normalization can be performed by either altering the actual data values or
# by applying a visual scaling of the segments. When 'value' is used, the data
# is changed. When 'visual' is used, then a chromosomes_scale line is reported
# by this script which you must include in circos.conf for the scaling to be applied
segment_normalization_scheme   = value

################################################################
# placement of cell ribbons on row/column segments
# 
# for segments that share both column and row ribbons, the
# order of ribbon position can be adjusted with placement_order

placement_order = row,col # col,row or row,col

# within the row/column ribbon bundle for each segment, 
# ribbon_bundle_order determines how the ribbons will be
# ordered
# - size   - by value of the cell
# - ascii  - sorted by destination label
# - native - sorted by order of destination segment

ribbon_bundle_order = native # size, ascii, native

# reverse the position of links in table/row segments?

reverse_rows    = no
reverse_columns = no

# values for cells with the same row/column name can be treated
# independently. You can
# show - show these cells and not filter them at all
# hide - hide these cells from the image, but not resize the row/columns
# remove - entirely remove these cells from the data set (equivalent to setting cells to missing value)
intra_cell_handling = show

# ribbon layering - order in which the ribbons are drawn on the image
# size_asc  - ascending by ribbon size (small ribbons drawn first, therefore large ribbons will be at front)
# size_desc - descending by ribbon size (large ribbons drawn first, therefore small ribbons will be at front)

ribbon_layer_order = size_asc

# if both (A,B)=x and (B,A)=y cells exist, you can choose to have the ribbon
# ends sized variably so that ribbon at A has width x and at B has width y

ribbon_variable = no
ribbon_variable_intra_collapse = yes

################################################################
# cell value mapping allows you to remap the cell values using
# any Perl expression that uses X as the cell value. For example,
#
# cell_remap_formula = log(X)
#                    = sqrt(X)
#                    = X/10
#                    = X ? log(X) : 0
#
# This remapping takes place before any filters or scaling is applied. Its effect
# is the same as remapping the cell values in the input file.

use_cell_remap     = no
cell_remap_formula = round(10*X)

################################################################
# scale your values with a power rule (useful if the range of values
# is very large) to
# - atten_large: attenuate large values and maintain visibility
#   of ribbons corresponding to small values, or
# - atten_small: attenuate small values to increase visibility
#   of ribbons corresponding to large values
#
# given a value, v, and a maximum, m
#
# atten_small:
#
# v_new = m * ( exp(scale_factor * v / m) - 1 ) / ( exp(scale_factor) - 1 )
#
# atten_large:
#
# v_new = m * ( log(scale_factor * v ) ) / ( log(scale_factor * m ) )
# 
# essentially the values are remapped to a log-type scale 
# with the range 0..m

use_scaling    = no
scaling_type   = atten_large
scale_factor   = 1

blank_means_missing = no
missing_cell_value = -

################################################################
# Value cutoffs for cell values and ribbon formatting.
#
# You can toggle the visibility of ribbons for cells outside
# a min/max range. You can define one or more of these cutoffs.
# The cutoffs are applied to unscaled cell values.

#cell_min_value      = 10
#cell_min_percentile = 10
#cell_max_value      = 100
#cell_max_percentile = 100

# For cell values that do not pass the min/max filters above,
# you can specify whether they are hidden or removed. If the
# parameter is not defined, "hide" will be assumed.
# hide - cell values won't be shown, but row/col will not be resized
# remove - entirely remove these cells from the data set (equivalent to setting cells to missing value)

cutoff_cell_handling = hide

# The color of ribbons is by default the color of the row segment from
# which they originate. The block below allows you to remap the color
# of the ribbons based on cell percentile values. There are two ways
# to remap colors
# 
# - color_remap=yes, color_autoremap=no
#   Uses <percentile> blocks to define the percentile values and associated
#   color/stroke_color characteristics for ribbons. Percentile value defined
#   in the block (e.g. <percentile 55>) is the max percentile value for
#   cells associated with this block.
# - color_remap=yes, color_autoremap=yes
#   Uses colors associated with each percentile window of size
#   percentile_sampling for each cell

<linkcolor>
color_source       = row
percentile_source  = larger
color_transparency = 1
color_remap        = no
color_autoremap    = no

<percentile 50>
color = dgrey
transparency = 5
</percentile>

<percentile 60>
transparency = 5
</percentile>

<percentile 70>
transparency = 4
</percentile>

<percentile 80>
transparency = 3
</percentile>

<percentile 90>
transparency = 2
stroke_color = black
stroke_thickness = 1p
</percentile>

<percentile 100>
transparency = 1
stroke_color = black
stroke_thickness = 3p
</percentile>

</linkcolor>

<linkparam>
color = vdgrey
#stroke_color = black
#stroke_thickness = 1p
</linkparam>

# If you are using color_autoremap=yes above, then
# define the percentile sampling window and 
# the start/end HSV color values. Percentile window
# colors are interpolated between this HSV pair.
#
# HSV = (hue saturation value) 
# hue=(0..360) saturation=(0..1) value=(0..1) 

percentile_sampling = 5

# count - percentile based on counts
# value - percentile based on value

percentile_method = count

# use all values or only unique values when
# calculating percentiles
percentile_unique_only = yes

# use a function, f(X), to remap cell values when calculating percentiles
# for the purpose of color mapping. This allows you to apply a remapping to how
# colors are calculated, without actually changing the values. The remap
# applies only if percentile_method=value

# percentile_remap = sqrt(X)

# Which cell value set to use for percentile color mapping
# raw - original values
# filtered - values that pass min/max filters
# scaled - filtered values that have been scaled if use_scaling is set
percentile_data_domain = raw

<colors>
h0 = 0
s0 = 1
v0 = 1
h1 = 300
s1 = 1
v1 = 1
</colors>

# You can control the color and stroke of ribbons for each
# quartile (q1, q2, q3, q4). Any values defined here will
# overwrite colors determined by remapping. 
#
# For example, if you have a lot of cells and wish to attenuate
# the visibility of ribbons associated with small values, you can
# set cell_q1_color=vvlgrey,cell_q1_nostroke=yes to fade the
# ribbons into the background.

#cell_q1_color    = vvlgrey
#cell_q2_color    = vlgrey
#cell_q3_color    = lgrey
#cell_q4_color    = red
#cell_q1_nostroke = yes
#cell_q2_nostroke = yes
#cell_q3_nostroke = yes
#cell_q4_nostroke = yes

# cell value multiplier, required when all data is small (e.g. <1), in which
# case set the multiplier to something like 1000 because Circos
# works only with integer scales

data_mult = 1

################################################################
# Segment labels can be optionally set to a size that is
# proportional to the size of the segment. Set min/max size
# values here. If this line is commented out, then the label
# size is determined by the circos.conf file used to draw the image

#segment_label_size_range       = 60,60

# progression controls how fast the label size changes from
# min to max (larger value of progression means values close to max
# are achieved for smaller segments)

segment_label_size_progression = 4

segment_label_uppercase = no

################################################################
# Segment colors can be specified in the data file (in this
# case use row_color_col and col_color_row), otherwise colors
# are interpolated within an HSV range. Color interpolation can be
# done in two ways: based on segment index (interpolation steps through
# colors uniformly for each segment) and total size (interpolation
# steps through colors in proportion to segment size).

<segment_colors>
interpolate_type = size # size or count
h0 = 0
s0 = 0.8
v0 = 0.9
h1 = 300
s1 = 0.8
v1 = 0.9
</segment_colors>

################################################################
# Shorten the labels of segments. Specify whether to do this
# with shorten_text=yes|no parameter and provide regular
# expressions in string_replace which define the text to
# replace. 

shorten_text = no

<string_replace>
chromosome = chr
</string_replace>

# exit on any error
strict_sanity = yes

################################################################
# if the segment_prefix is set, then rows and columns will be
# renamed to internal fields segment_prefix + DIGIT

#segment_prefix  = id
color_prefix = color

################################################################
# Delimiters

# field delimiter regular expression
# if this is not defined, any whitespace will be considered a delimiter
field_delim = \s

# collapse adjacent delimiters?
field_delim_collapse = yes

# remove any leading space in the input file
# by default, this is on - if you set this to "no", make sure that you don't have any leading spaces in your table!
strip_leading_space = yes

# remove quotes and thousand separators - concatenate characters to remove
#
# e.g. to remove characters a b c set remove_cell_rx=abc
# e.g. to remove characters " ' , set remove_cell_rx="',
remove_cell_rx = "'