Задать вопрос
@Pitonist224

Как нарисовать график с заштриховкой на c#?

Нужно сделать вот такой график
5e46f4cd25a5c199571249.png
Принцип понятен:
с помощью livecharts сразу рисую step line, заштриховываю всё внутри
stepline.jpg
затем поверх рисую обычную линию
Но, проблема лишь в том, что я не знаю как в livecharts заштриховать первый график (step line).
Или может посоветуете использовать другую либу?
Наверное должен же где-то быть готовый метод штриховки.
  • Вопрос задан
  • 182 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@Pitonist224 Автор вопроса
Что-то написал сам, что-то посмотрел в интернете и получилось это:
public static Brush HatchBrush
        {
            get
            {
                var canvas = new Canvas();

                canvas.Children.Add(new Path
                {
                    Stroke = Brushes.Black,
                    StrokeThickness = 1,
                    Data = new LineGeometry(new Point(0, 0), new Point(40, 40))
                });

                var myHathBrush = new VisualBrush
                {
                    TileMode = TileMode.Tile,
                    Viewport = new Rect(0, 0, 10, 10),
                    ViewportUnits = BrushMappingMode.Absolute,
                    Visual = canvas
                };

                return myHathBrush;
            }
        }

5e495886b8651311406463.png

Если нужно изменить размер, расстояние, то следует поиграться со значениями.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Griboks
@Griboks Куратор тега C#
Я не разбираюсь в графиках в WPF поэтому советую использовать GDI+ и вручную нарисовать всё, что требуется. Это сделать достаточно легко, используя обычные методы объекта Graphics, созданного на основе, например, Image (Bitmap).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы