Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit ff98856

Browse filesBrowse files
committed
Merge pull request #6481 from jenshnielsen/default-boxplot-style-rebase
API: Default boxplot style
1 parent 042ee89 commit ff98856
Copy full SHA for ff98856
Expand file treeCollapse file tree

40 files changed

+704
-818
lines changed

‎lib/matplotlib/axes/_axes.py

Copy file name to clipboardExpand all lines: lib/matplotlib/axes/_axes.py
+46-12Lines changed: 46 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3363,6 +3363,8 @@ def _update_dict(dictionary, rc_name, properties):
33633363
# filled symbol, if the users want more control use
33643364
# flierprops
33653365
flierprops['color'] = color
3366+
flierprops['markerfacecolor'] = color
3367+
flierprops['markeredgecolor'] = color
33663368

33673369
# replace medians if necessary:
33683370
if usermedians is not None:
@@ -3575,23 +3577,34 @@ def bxp(self, bxpstats, positions=None, widths=None, vert=True,
35753577

35763578
# box properties
35773579
if patch_artist:
3578-
final_boxprops = dict(linestyle='solid', edgecolor='black',
3579-
facecolor='white', linewidth=1)
3580+
final_boxprops = dict(
3581+
linestyle=rcParams['boxplot.boxprops.linestyle'],
3582+
edgecolor=rcParams['boxplot.boxprops.color'],
3583+
facecolor=rcParams['patch.facecolor'],
3584+
linewidth=rcParams['boxplot.boxprops.linewidth']
3585+
)
3586+
if rcParams['_internal.classic_mode']:
3587+
final_boxprops['facecolor'] = 'white'
35803588
else:
3581-
final_boxprops = dict(linestyle='-', color='blue')
3589+
final_boxprops = dict(
3590+
linestyle=rcParams['boxplot.boxprops.linestyle'],
3591+
color=rcParams['boxplot.boxprops.color'],
3592+
)
35823593

35833594
if boxprops is not None:
35843595
final_boxprops.update(boxprops)
35853596

35863597
# other (cap, whisker) properties
35873598
final_whiskerprops = dict(
3588-
linestyle='--',
3589-
color='blue',
3599+
linestyle=rcParams['boxplot.whiskerprops.linestyle'],
3600+
linewidth=rcParams['boxplot.whiskerprops.linewidth'],
3601+
color=rcParams['boxplot.whiskerprops.color'],
35903602
)
35913603

35923604
final_capprops = dict(
3593-
linestyle='-',
3594-
color='black',
3605+
linestyle=rcParams['boxplot.capprops.linestyle'],
3606+
linewidth=rcParams['boxplot.capprops.linewidth'],
3607+
color=rcParams['boxplot.capprops.color'],
35953608
)
35963609

35973610
if capprops is not None:
@@ -3601,23 +3614,44 @@ def bxp(self, bxpstats, positions=None, widths=None, vert=True,
36013614
final_whiskerprops.update(whiskerprops)
36023615

36033616
# set up the default flier properties
3604-
final_flierprops = dict(linestyle='none', marker='+', color='blue')
3617+
final_flierprops = dict(
3618+
linestyle=rcParams['boxplot.flierprops.linestyle'],
3619+
linewidth=rcParams['boxplot.flierprops.linewidth'],
3620+
color=rcParams['boxplot.flierprops.color'],
3621+
marker=rcParams['boxplot.flierprops.marker'],
3622+
markerfacecolor=rcParams['boxplot.flierprops.markerfacecolor'],
3623+
markeredgecolor=rcParams['boxplot.flierprops.markeredgecolor'],
3624+
markersize=rcParams['boxplot.flierprops.markersize'],
3625+
)
36053626

36063627
# flier (outlier) properties
36073628
if flierprops is not None:
36083629
final_flierprops.update(flierprops)
36093630

36103631
# median line properties
3611-
final_medianprops = dict(linestyle='-', color='red')
3632+
final_medianprops = dict(
3633+
linestyle=rcParams['boxplot.medianprops.linestyle'],
3634+
linewidth=rcParams['boxplot.medianprops.linewidth'],
3635+
color=rcParams['boxplot.medianprops.color'],
3636+
)
36123637
if medianprops is not None:
36133638
final_medianprops.update(medianprops)
36143639

36153640
# mean (line or point) properties
36163641
if meanline:
3617-
final_meanprops = dict(linestyle='--', color='black')
3642+
final_meanprops = dict(
3643+
linestyle=rcParams['boxplot.meanprops.linestyle'],
3644+
linewidth=rcParams['boxplot.meanprops.linewidth'],
3645+
color=rcParams['boxplot.meanprops.color'],
3646+
)
36183647
else:
3619-
final_meanprops = dict(linestyle='none', markerfacecolor='red',
3620-
marker='s')
3648+
final_meanprops = dict(
3649+
linestyle='',
3650+
marker=rcParams['boxplot.meanprops.marker'],
3651+
markerfacecolor=rcParams['boxplot.meanprops.markerfacecolor'],
3652+
markeredgecolor=rcParams['boxplot.meanprops.markeredgecolor'],
3653+
markersize=rcParams['boxplot.meanprops.markersize'],
3654+
)
36213655
if meanprops is not None:
36223656
final_meanprops.update(meanprops)
36233657

‎lib/matplotlib/mpl-data/stylelib/classic.mplstyle

Copy file name to clipboardExpand all lines: lib/matplotlib/mpl-data/stylelib/classic.mplstyle
+4Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,10 @@ boxplot.meanprops.color: r
348348
boxplot.meanprops.linestyle: -
349349
boxplot.meanprops.linewidth: 1.0
350350
boxplot.medianprops.color: r
351+
boxplot.meanprops.marker: s
352+
boxplot.meanprops.markerfacecolor: r
353+
boxplot.meanprops.markeredgecolor: k
354+
boxplot.meanprops.markersize: 6.0
351355
boxplot.medianprops.linestyle: -
352356
boxplot.medianprops.linewidth: 1.0
353357
boxplot.notch: False

‎lib/matplotlib/rcsetup.py

Copy file name to clipboardExpand all lines: lib/matplotlib/rcsetup.py
+12-8Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -926,21 +926,21 @@ def validate_hist_bins(s):
926926
'boxplot.showfliers': [True, validate_bool],
927927
'boxplot.meanline': [False, validate_bool],
928928

929-
'boxplot.flierprops.color': ['C0', validate_color],
930-
'boxplot.flierprops.marker': ['+', six.text_type],
931-
'boxplot.flierprops.markerfacecolor': ['auto', validate_color_or_auto],
929+
'boxplot.flierprops.color': ['k', validate_color],
930+
'boxplot.flierprops.marker': ['o', six.text_type],
931+
'boxplot.flierprops.markerfacecolor': ['none', validate_color_or_auto],
932932
'boxplot.flierprops.markeredgecolor': ['k', validate_color],
933933
'boxplot.flierprops.markersize': [6, validate_float],
934934
'boxplot.flierprops.linestyle': ['none', six.text_type],
935935
'boxplot.flierprops.linewidth': [1.0, validate_float],
936936

937-
'boxplot.boxprops.color': ['C0', validate_color],
937+
'boxplot.boxprops.color': ['k', validate_color],
938938
'boxplot.boxprops.linewidth': [1.0, validate_float],
939939
'boxplot.boxprops.linestyle': ['-', six.text_type],
940940

941-
'boxplot.whiskerprops.color': ['C0', validate_color],
941+
'boxplot.whiskerprops.color': ['k', validate_color],
942942
'boxplot.whiskerprops.linewidth': [1.0, validate_float],
943-
'boxplot.whiskerprops.linestyle': ['--', six.text_type],
943+
'boxplot.whiskerprops.linestyle': ['-', six.text_type],
944944

945945
'boxplot.capprops.color': ['k', validate_color],
946946
'boxplot.capprops.linewidth': [1.0, validate_float],
@@ -950,9 +950,13 @@ def validate_hist_bins(s):
950950
'boxplot.medianprops.linewidth': [1.0, validate_float],
951951
'boxplot.medianprops.linestyle': ['-', six.text_type],
952952

953-
'boxplot.meanprops.color': ['C3', validate_color],
953+
'boxplot.meanprops.color': ['C2', validate_color],
954+
'boxplot.meanprops.marker': ['^', six.text_type],
955+
'boxplot.meanprops.markerfacecolor': ['C2', validate_color],
956+
'boxplot.meanprops.markeredgecolor': ['C2', validate_color],
957+
'boxplot.meanprops.markersize': [6, validate_float],
958+
'boxplot.meanprops.linestyle': ['--', six.text_type],
954959
'boxplot.meanprops.linewidth': [1.0, validate_float],
955-
'boxplot.meanprops.linestyle': ['-', six.text_type],
956960

957961
## font props
958962
'font.family': [['sans-serif'], validate_stringlist], # used by text object
Binary file not shown.
Loading

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.