Graph 绘图仪中沿轴的适当标记距离

Graph 绘图仪中沿轴的适当标记距离,graph,plot,Graph,Plot,我正在写一个二维绘图仪,沿着X轴和Y轴,我有带有打印值的标记。现在我的问题是:如何找到合适的距离 到目前为止,我的方法(对于数值轴)是: 我知道屏幕上轴的高度(以像素为单位) 以像素为单位确定标记之间的最佳距离(屏幕上看起来不错的…),例如32像素 重新计算像素计数到轴的值(例如,如果轴为320像素,轴的范围为0-40°C,则该值为32*(40/320)=4。因此,最佳距离为4°C。) 从1°C的距离开始。如果距离大于最佳距离,则将其除以2,直到小于最佳距离。同样,如果距离小于最佳距离,乘以2

我正在写一个二维绘图仪,沿着X轴和Y轴,我有带有打印值的标记。现在我的问题是:如何找到合适的距离

到目前为止,我的方法(对于数值轴)是:

  • 我知道屏幕上轴的高度(以像素为单位)
  • 以像素为单位确定标记之间的最佳距离(屏幕上看起来不错的…),例如32像素
  • 重新计算像素计数到轴的值(例如,如果轴为320像素,轴的范围为0-40°C,则该值为32*(40/320)=4。因此,最佳距离为4°C。)
  • 从1°C的距离开始。如果距离大于最佳距离,则将其除以2,直到小于最佳距离。同样,如果距离小于最佳距离,乘以2,直到大于最佳距离
这是可行的,但它并没有给我提供与我手动选择的相同的距离。例如:如果范围为0-1000,我将决定以下距离之一:

  • 1000(0,1000
  • 500(05001000)
  • 250(0250507501000)
  • 200(0,200,400,600,800,1000)
  • 100(0,100,…,900,1000)
  • 50(0,50,…,950,1000)
等等


你有什么好主意吗?

一个可能有帮助的建议是预先确定哪些距离看起来合适,然后根据轴上范围的大小定义一个查找表。但是,为了避免需要太多数据,请确保将轴标准化回标准范围

例如,计算范围,然后将其归一化回1-100的范围,然后在查找表中找到最近的值并使用该距离


如果你有Excel,你可以查看他们创建的结果,看看你是否能从中收集到有用的算法,尽管我经常发现我需要手动覆盖Excel显示的距离以保持清晰。结果可能是,手动覆盖对你的应用程序来说也是一项重要功能。

欢迎。我是该网站的新手,所以得到一些积极的支持真是一件令人兴奋的事!待会儿见。