alandefreitas / matplotplusplus

Matplot++: A C++ Graphics Library for Data Visualization 📊🗾
https://alandefreitas.github.io/matplotplusplus/
MIT License
4.1k stars 311 forks source link

too low precision for double data points #395

Open DNKpp opened 4 months ago

DNKpp commented 4 months ago

Bug category

Describe the bug

The precision used for converting the double data values from binary to textual representation seems to unreasonable low. That's at least the case in the line::data_string function, where it is constantly set to 10 (see line.cpp#L166). This leads to data points not showing up in plots with logarithmic axes scaling.

Locally I bumped this straight to 16 (std::numeric_limits<double>::digits10yields 15),, which works as intended (at least for me).

Steps to Reproduce Well, create a loglog plot with very small double data values.

Output

imprecise output

image That's part of the cmd dump, sent to gnuplot image

fixed output

image That's part of the cmd dump, sent to gnuplot image

Platform

Environment Details:

Additional context