How to change marker border width and hatch width?

  1. You just need to set the linewidth to control the marker border thickness.
  2. You can increase the density of hatching, by repeating symbols (in the example below, the '|' is repeated in the R/H pane; note that to obtain NW->SE diagonal lines the symbol must be escaped so needs twice as many characters to really double it — '\\\\' is density 2 while '||||' is density 4). However, I don’t think the thickness of individual lines within hatching is controllable.

See the code example below to produce scatter plots such as these:
example hatching control

import matplotlib.pyplot as plt
# generate some data
x = [1,2,3,4,5,8]
y= [i**2 for i in x]
y2= [60-i**2+3*i for i in x]

# plot markers with thick borders
plt.subplot(121)
plt.scatter(x,y, s=500, marker="s", edgecolor="black", linewidth=3, facecolor="green", hatch="|")
# compare with no borders, and denser hatch.
plt.subplot(122)
plt.scatter(x,y2, s=500, marker="s", edgecolor="black", linewidth=0, facecolor="green", hatch="||||")

plt.show()

matplotlib documentation on collections
and scatter.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)