This commit is contained in:
Simon Gardling 2022-02-24 01:13:10 -05:00
parent 1d1574a1ed
commit 98aac84e71
2 changed files with 9 additions and 9 deletions

View File

@ -56,9 +56,7 @@ impl ChartManager {
(filtered_data, rect_data, area) (filtered_data, rect_data, area)
} }
pub fn get_step(&self) -> f64 { pub fn get_step(&self) -> f64 { (self.max_x - self.min_x).abs() / (self.num_interval as f64) }
(self.max_x - self.min_x).abs() / (self.num_interval as f64)
}
pub fn do_update_front(&self, resolution: usize, num_interval: usize) -> bool { pub fn do_update_front(&self, resolution: usize, num_interval: usize) -> bool {
(self.resolution != resolution) | (num_interval != self.num_interval) (self.resolution != resolution) | (num_interval != self.num_interval)
@ -104,7 +102,7 @@ impl ChartManager {
// Creates and does the math for creating all the rectangles under the graph // Creates and does the math for creating all the rectangles under the graph
#[inline] #[inline]
fn integral_rectangles(&self, step: f64) -> (Vec<(f64, f64)>, f64) { fn integral_rectangles(&self, step: f64) -> (Vec<(f64, f64)>, f64) {
let half_step = step/2.0; let half_step = step / 2.0;
let data2: Vec<(f64, f64)> = (0..self.num_interval) let data2: Vec<(f64, f64)> = (0..self.num_interval)
.map(|e| { .map(|e| {
let x: f64 = ((e as f64) * step) + self.min_x; let x: f64 = ((e as f64) * step) + self.min_x;
@ -126,9 +124,9 @@ impl ChartManager {
// Applies `half_step` in order to make the bar graph display properly // Applies `half_step` in order to make the bar graph display properly
if output.0 > 0.0 { if output.0 > 0.0 {
output.0 = output.0+half_step; output.0 = output.0 + half_step;
} else { } else {
output.0 = output.0-half_step; output.0 = output.0 - half_step;
} }
output output

View File

@ -3,7 +3,7 @@ use crate::misc::{digits_precision, test_func, Cache};
use eframe::{egui, epi}; use eframe::{egui, epi};
use egui::plot::{Line, Plot, Value, Values}; use egui::plot::{Line, Plot, Value, Values};
use egui::widgets::plot::{Bar, BarChart}; use egui::widgets::plot::{Bar, BarChart};
use egui::{Color32}; use egui::Color32;
pub struct MathApp { pub struct MathApp {
func_str: String, func_str: String,
@ -134,7 +134,9 @@ impl epi::App for MathApp {
} }
} }
}; };
let bar_chart = BarChart::new(bars).color(Color32::BLUE).width(chart_manager.get_step()); let bar_chart = BarChart::new(bars)
.color(Color32::BLUE)
.width(chart_manager.get_step());
Plot::new("plot") Plot::new("plot")
.view_aspect(1.0) .view_aspect(1.0)