Skip to content

Commit 9003a9c

Browse files
specify xtick locations for pnf
1 parent d92bacc commit 9003a9c

File tree

3 files changed

+190
-563
lines changed

3 files changed

+190
-563
lines changed

examples/scratch_pad/issues/issue568_pnf_calcs.ipynb

+181-561
Large diffs are not rendered by default.

src/mplfinance/_utils.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -1573,8 +1573,9 @@ def _construct_pnf_scatter(ax,ptype,dates,xdates,opens,highs,lows,closes,volumes
15731573
lo = min(yvals)
15741574
xlen = int(round((hi-lo)/box_size,0)+2) # +2 empirical kludge
15751575
pad = (xlen-xvals[-1]) * pointnfig_params['scale_right_padding']
1576-
print('hi,lo,xlen,xvals[-1],pad=',hi,lo,xlen,xvals[-1],pad)
1577-
print('ylim_top,ylim_bot=',ylim_top,ylim_bot)
1576+
pad = max(0,pad) # less than zero not allowed
1577+
#print('hi,lo,xlen,xvals[-1],pad=',hi,lo,xlen,xvals[-1],pad)
1578+
#print('ylim_top,ylim_bot=',ylim_top,ylim_bot)
15781579

15791580
xdates = np.arange(len(pnfd)+int(pad))
15801581
pnf_volumes = pnf_volumes + [float('nan')]*int(pad)

src/mplfinance/plotting.py

+6
Original file line numberDiff line numberDiff line change
@@ -707,6 +707,12 @@ def plot( data, **kwargs ):
707707
pnf_os = list(pnf_results['pnf_df'].OBox.values)
708708
tick_vals = sorted( set(pnf_xs + pnf_os) )
709709
axA1.set_yticks(tick_vals)
710+
skip = int( round(len(xdates)/10.0, 0) )
711+
skip = max(1,skip) # must be at least 1
712+
tick_vals = [t for t in range(0-skip,len(xdates)+1,skip)]
713+
#print('len(xdates)=',len(xdates),'len(pnf_mdates)=',len(pnf_mdates))
714+
#print('skip=',skip,'\nxdates=',xdates,'\npnf_dates=',[str(d.date()) for d in mdates.num2date(pnf_mdates)])
715+
axA1.set_xticks(tick_vals)
710716

711717
ysd = config['yscale']
712718
if isinstance(ysd,dict):

0 commit comments

Comments
 (0)