17
$\begingroup$

Bug introduced in 8.0 or earlier and persisting in 11.2
Possibly the same bug as (41706).


Take a look at the first two points on the chart:

ListLinePlot[{15, 30, 32, 33, 34, 35}, Mesh -> All]

ListLinePlot output

I have just notified support about this (CASE:3539237), but I wanted to share it with the community.

Update 2017-08-31: The bug seems to be back in version 11.1

$\endgroup$
7
  • 1
    $\begingroup$ That's bizarre! $\endgroup$ Commented Feb 26, 2016 at 18:23
  • $\begingroup$ I don't think this was fixed in 10.4. That version simply used a larger automatic PlotRange, but if any part of the line was outside of the plot range, the stray point was still there. $\endgroup$
    – Szabolcs
    Commented Aug 31, 2017 at 17:39
  • $\begingroup$ I also wouldn't call the smaller plot range a bug. It is reasonable to exclude outliers, and of course it is not very clear what should be considered an outlier ... so Mathematica won't always be able to automatically come up with a plot range that is best for your application. Sometimes manual corrections are necessary. (As for the stray point: clearly a bug.) $\endgroup$
    – Szabolcs
    Commented Aug 31, 2017 at 17:41
  • $\begingroup$ The bug is the non-existent point at (1,24). It doesn't happen in 10.4 $\endgroup$ Commented Aug 31, 2017 at 17:43
  • $\begingroup$ It does happen in 10.4. It only happens when not all data fits in the plot range (and 10.4 seems to have a different automatic plot range determination: in this case it fits all the data). $\endgroup$
    – Szabolcs
    Commented Aug 31, 2017 at 18:04

2 Answers 2

11
$\begingroup$

A workaround is to add ClippingStyle -> False:

ListLinePlot[{15, 30, 32, 33, 34, 35}, Mesh -> All, ClippingStyle -> False]

plot

I think that this ListPlot bug is related:

Unwanted PlotMarkers appear at non-existent places

$\endgroup$
4
  • $\begingroup$ Alexey, I was about to mark this question as a duplicate of that one; do you have reason to believe this is not the same bug? $\endgroup$
    – Mr.Wizard
    Commented Feb 26, 2016 at 23:47
  • 1
    $\begingroup$ I think that this is another manifestation of the same underlying bug. I agree that this question can be considered as a duplicate although this manifestation is different. $\endgroup$ Commented Feb 27, 2016 at 0:06
  • 1
    $\begingroup$ @Mr.Wizard Now it is clear that this bug (fixed in version 10.4) is completely independent from that one (still persists). $\endgroup$ Commented Apr 20, 2016 at 8:31
  • 1
    $\begingroup$ @AlexeyPopkov It wasn't fixed in 10.4. 10.4 computes the Automatic plot range differently, and all the points will fit within it. If you manually set the same plot range that other versions use, the problem is there. I put in the PlotRangePadding only for better visibility. I also think it's the same bug as in the other question (but it looks different enough to keep a separate question). $\endgroup$
    – Szabolcs
    Commented Aug 31, 2017 at 18:06
4
$\begingroup$

The problem does not occur if the PlotRange is specified

ListLinePlot[{15, 30, 32, 33, 34, 35}, Mesh -> All, PlotRange -> All]

enter image description here

ListLinePlot[{15, 30, 32, 33, 34, 35}, Mesh -> All, PlotRange -> {14, 36}]

enter image description here

$\endgroup$
2
  • 2
    $\begingroup$ Not exactly true : see what happens with PlotRange->{20,36} : the two extra first markers are there (even if they are hard to see). Interestingly, if you add the option PlotMarkers -> {Automatic,20} the first extra marker disappears, the second is still there. Interestingly again, if you set Mesh -> Full then the second extra marker disappears, the first is back ! $\endgroup$
    – SquareOne
    Commented Feb 26, 2016 at 13:07
  • $\begingroup$ @SquareOne - Yes, solution provided by Alexey Popov appears more robust. $\endgroup$
    – Bob Hanlon
    Commented Feb 26, 2016 at 13:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.