2015-09-03 4 views
0

У меня есть участок с LineWidth = 2 аналогиченMatlab соединение заостренных линий

plot([0 1 2 10],[0 10 0 0],'LineWidth', 2) 

Есть ли какой-нибудь способ сделать соединение линии (как в точке (1,10)) менее заостренного без добавления дополнительных точек к сюжету? Например. «изогнутое» соединение линии было бы лучше.

+0

Для уточнения: То, что я имел в виду, что линия в заостренных соединениях простирается очень далеко от точки, сравнить, например, график ([0 1 2 10], [0 10 0 0], 'LineWidth', 2) с графиком ([0 1 1 2 10], [0 10 10 0 0], 'LineWidth', 2), который выглядит лучше. Я все еще хочу, чтобы линии были прямыми. – user3242169

ответ

1

В Matlab R2015 вы можете использовать Curve Fitting App.

сначала определить x и y переменные:

x = [0 1 2 10]; 
y = [0 10 0 0] 

Затем откройте приложение, нажав на вкладке APPS и затем Curve fitting. Приложение откроется в новом окне. В ней

  • Вы выбираете переменные в раскрывающихся X data и Y data; и затем
  • Выберите параметры для установки (два раскрывающихся меню в верхней правой части).
  • Вы также можете нажать кнопку Legend, чтобы удалить или включить легенду.

См. Рисунок ниже, в котором я выбрал модель и метод Shape-preserving (PCHIP).

enter image description here

Наконец, если нажать на меню File и затем Print to Figure вы получите независимую фигуру с сюжетом, как показано ниже.

enter image description here

+0

Спасибо, это хороший инструмент, но на самом деле он не решает проблему. Возможно, я не объяснил проблему достаточно ясно; я имел в виду, что линия в узких соединениях простирается очень далеко от точки, сравните, например. участок ([0 1 2 10], [0 10 0 0], 'LineWidth', 2) и участок ([0 1 1 2 10], [0 10 10 0 0], 'LineWidth', 2) , Я все еще хочу, чтобы линии были прямыми. – user3242169

+0

О, я вижу. Это не совсем понятно в вашем первоначальном вопросе. Одним из способов было бы автоматически повторять каждое значение 'x' и' y' (как вы это делали с пиком). Я имею в виду вместо «plot (x, y)» использовать что-то вроде «plot (kron (x, [1 1]), kron (y, [1 1])). Но должен быть более элегантный способ –

Смежные вопросы