Преглед изворни кода

chore: slightly improve autoscaling for charts

Berke пре 10 месеци
родитељ
комит
076d0fcc5c
3 измењених фајлова са 7 додато и 3 уклоњено
  1. 3 1
      src/charts/candlestick.rs
  2. 3 1
      src/charts/footprint.rs
  3. 1 1
      src/charts/heatmap.rs

+ 3 - 1
src/charts/candlestick.rs

@@ -325,7 +325,9 @@ impl CandlestickChart {
 
         if chart_state.autoscale {
             chart_state.translation =
-                Vector::new(0.4 * chart_state.bounds.width / chart_state.scaling, {
+                Vector::new(
+                    0.5 * (chart_state.bounds.width / chart_state.scaling) - (8.0 * chart_state.cell_width / chart_state.scaling),
+                    {
                     if let Some((_, kline)) = self.data_points.last_key_value() {
                         let y_low = chart_state.price_to_y(kline.low);
                         let y_high = chart_state.price_to_y(kline.high);

+ 3 - 1
src/charts/footprint.rs

@@ -561,7 +561,9 @@ impl FootprintChart {
 
         if chart_state.autoscale {
             chart_state.translation =
-                Vector::new(0.4 * chart_state.bounds.width / chart_state.scaling, {
+                Vector::new(
+                    0.5 * (chart_state.bounds.width / chart_state.scaling) - (chart_state.cell_width / chart_state.scaling),
+                    {
                     if let Some((_, (_, kline))) = self.data_points.last_key_value() {
                         let y_low = chart_state.price_to_y(kline.low);
                         let y_high = chart_state.price_to_y(kline.high);

+ 1 - 1
src/charts/heatmap.rs

@@ -418,7 +418,7 @@ impl HeatmapChart {
 
         if chart_state.autoscale {
             chart_state.translation = Vector::new(
-                0.4 * chart_state.bounds.width / chart_state.scaling,
+                0.5 * (chart_state.bounds.width / chart_state.scaling) - (90.0 / chart_state.scaling),
                 0.0,
             );
         }